I am trying to clear up the IISExpress Cache from the powershell. Using this code it complains about the list.
"C:\Program Files (x86)\IIS Express\appcmd.exe" list site /xml | appcmd delete site /in
How can I clear up the sites and the IIS Express cache?
At line:1 char:50
+ "C:\Program Files (x86)\IIS Express\appcmd.exe" list site /xml | app ...
+ ~~~~
Unexpected token 'list' in expression or statement.
+ CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : UnexpectedToken
Open CMD prompt & Navigate to IIS express - by typing the following
cd "C:\Program Files (x86)\IIS Express\"
run this appcmd.exe list site /xml | appcmd delete site /in
This will delete all the sites, enjoy!
In PowerShell, you need to use the call operator (&) to pass parameters/arguments to an executable.
Taken from this page : Cleaning up IIS Express Sites
$appCmd = "C:\Program Files (x86)\IIS Express\appcmd.exe"
$result = Invoke-Command -Command { & $appCmd 'list' 'sites' '/text:SITE.NAME' }
for ($i = 0; $i -lt $result.length; $i++) {
Invoke-Command -Command { & $appCmd 'delete' 'site' $result[$i] }
}
Variation from a comment on this page :
Set-Alias appcmd "$env:ProgramFiles\IIS Express\appcmd.exe"
appcmd list site /text:SITE.NAME | % { appcmd delete site $_ }
- Check the Assembly.GetExecutingAssembly().Location property when you are debgging and are stopped at some breakpoint
- you will see a location like below path
C:\Users\YOURUSERSNAME\AppData\Local\Temp\Temporary ASP.NET
Files\vs\cf7d3a03\8366a6d0\assembly\dl3\c17148f6\bbf7eb43_d5cfd301\YOUR.dll
- so check out and delete all folders inside below path (propably possible after closing IIS express and VS)
C:\Users\YOURUSERSNAME\AppData\Local\Temp\Temporary ASP.NET Files\