This morning I did a sync of a repo using of Visual Studio and then tried to run a web application I was going start working when I got this error:
Unable to start process C:\Program Files\dotnet\dotnet.exe. The web server request failed with status code 500, Internal Server Error. The full response has been written to C:\Users\ericl\AppData\Local\Temp\HttpFailure_11-01-57.html.
As directed by the error message I opened up the referenced html file. The file stated the requested page cannot be access because the related configuration data for the page is invalid. Along with the path to the configuration file. Here is a screen shot of the rendered file.
I checked the config file referenced in the error message and I saw nothing wrong. It is the default generated file with no changes.
Since this project ran fine on another computer the day before I thought I would search for my profile name on from the other computer on the one having issues. This led me to the .vs/config folder found at the solution level of my application which contained the applicationhost.config file.
The solution
applicationhost.config has a lot of information in it, but the section I needed to change was under the sites tag. The physical path was set to the directory where the project was located on my other computer. I changed the path to match the path on my current computer and all worked fine. Not sure why this path isn’t relative one it exists within the solution. This is the line that I needed to change.
<virtualDirectory path="/" physicalPath="C:\Users\ericl\Source\Repos\ASP.NET Core Contacts\Contacts\src\Contacts" />
As an alternative it also works to close Visual Studio delete the whole .vs folder and reopen the project in Visual Studio. This causes the config file to regenerated with the proper values.
Looks like the .vs folder is in the default .gitignore file, but my project was missing the ignore file.
The applicationhost.config file in the .vs folder is an interesting story. Normally we don’t want to check anything in the .vs folder in. Starting with a . means hidden after all. But sometimes we want to place settings in our web.config that depend on a certain apphostConfig arrangement.
Do you have a strategy for sharing settings from apphost.config and web.config that avoids the issue in the post? Or is it something that has to be worked around?
I generally add this folder to gitignore and each user has their own copy. It allows for flexibility in different developer config.
I agree that the folder should be in gitignore and is by default I just forgot to add one in this project.
Worked for me.
Thanks a lot!
worked for me. Thank you!
1. hidden folder .vs
2.file applicationhost.config
3.find section
4.delete section
<application path="/index.html"…..
<virtual…
Pingback: Unable to start process dotnet.exe - ExceptionsHub
Pingback: ASP.NET Blog