I have a app which is under source control (TFS 2012 also) on c:\Dev\MyApp\Main.
Because im developing a new feature I decided to open a branch on c:\Dev\MyApp\BranchNewFeature.
I developed and when I decided that it was time to test it was like i hadn't done any changes at all. I hit F5 and i see the baseline version of the app... Looking into it I noticed a very curious fact: When i check IIS Express the "launch path" for the applications is the old one (c:\Dev\MyApp\Main).
Can anyone help me make IIS Express point to the new path? (C:\Dev\MyApp\BranchNewFeature)
I had a similar situation, and was looking for an answer, when I found this article. I thought about applying this fixed, but felt it was a lot of effort every time you need to branch or merge again.
I did a little more digging, and I believe I found an easier fix. I found that in Visual Studio 2013 if you open the Properties of the project, and click on the Web option, you will see a Servers section with a button 'Create Virtual Directory' in it.
If you click this button it will prompt you with a question about it pointing to a different directory then the project is in, would like to fix it. When you click yes it makes the fix for you, and when you debug now it will pull from the correct location.
I ran into the same issue. To fix it, I used cheesemacfly's suggestion, to update
C:\Users\%USERNAME%\Documents\IISExpress\config\applicationhost.config
to point to the new directory.The obvious downside with this solution is that you need to do this repeatedly if you plan on switching between your new branches often. Seems like a bug in VS2012...
Restarting VS seems to fix this problem. This is just an alternative solution, just as its a norm with all Windows products - close and restart, and boom it'll work!
Here's what happened: I faced the same problem after I worked on a web project in a branch using VS2013. As Chris Gillum mentioned above, I had the applicationhost.config open while I restarted VS, and the file got auto-refreshed with the correct path. So, this definitely seems to be a bug in Visual Studio.
UPDATE:
I've seen this issue numerous times since I posted this answer. And I've found an alternative to restarting VS. Here's what I do now:
Search for and fix the physical path to your workspace under the following section:
IISExpress will automatically refresh the site, and you do not need to restart VS. Hope this helps someone.
In case you get here searching for the same issue in Visual Studio 2015, the applicationhost.config file has moved to a hidden folder: $SolutionDirectory/.vs/config.
In VS 2015, I didn't have to edit the config file directly. I opened the branched project and went to Properties page under the Project. Go to the Web tab and edit Servers > Project URL.
I had a similar situation where I had copied a project. After running the project it displayed the original project in the browser rather than my copied, edited version. My solution was to remove all the effected sites from the config file:
C:\Users\%USERNAME%\Documents\IISExpress\config\applicationhost.config
I then had to right click the project in Visual Studio, click
Properties
then click theWeb
tab, on this tab I changed the port specified in theProject Url
and saved. Visual Studio then asked if I wanted to add the project back to the application host configuration file. I clicked yes and run the project, suddenly all was fine.My particular problem was not a bug in Visual Studio but rather a configuration mismatch.