Visual Studio 2012启动错误的调试项目

时间:2013-12-09 20:21:05

标签: asp.net visual-studio-2012

我在Visual Studio 2012解决方案中有一个ASP.NET Web应用程序项目。我将其称为A。

我将A的目录复制到新目录以进行克隆。我将其称为B.

我对A和B进行了大量更改,以至于它们甚至没有相似之处。样式表,脚本,HTML和后端都是不同的。

我启动了A进行调试,它按预期显示在我的浏览器中。我调试了应用程序一段时间,然后通过Visual Studio 2012中工具栏上的“停止调试”图标终止调试。

然后我启动了B进行调试。相反,我得到了A.

我尝试清除浏览器缓存,但这可能不是问题,因为应用程序的服务器端也是错误的。

我在运行Clean后尝试重建项目。我在尝试调试B时仍然看到A。

我尝试杀死与调试会话相关的所有进程,包括所有iisexpress.exe,MSBuild.exe,WebDev.WebServer40.EXE,Microsoft.VisualStudio.Web.Host.exe实例。

我尝试完全关闭Visual Studio 2012,重新打开它,然后重试调试。

修改

第三次关闭并重新打开VS2012之后,现在开始让我看到B.没有其他任何改变。


我能想到的最好的是必须有一些类型的项目设置需要更改以反映项目所处的位置与复制之前不同,但我还没有找到这样的设置

我错过了什么?

3 个答案:

答案 0 :(得分:13)

我今天刚遇到这个问题,完全和你一样(复制一个项目,然后编辑)。因此,我想分享我的解决方案。

如果您转到项目B Properties(在解决方案资源管理器中找到),您会找到Web标签:

enter image description here

Servers部分中,将Project Url更改为:

http://localhost: +(数字+1)+ /

然后点击创建虚拟目录

然后,您应该能够重新运行您的项目,并且由于他们正在运行不同的Url,您不应该再次看到此冲突。

答案 1 :(得分:7)

我处于完全相同的情况。问题是我们设置的两个项目(Project_A和Project_B)都在IIS Express的同一个端口上运行。

IISExpress通过查看位于< Documents> \ IISExpress \ config \ application.config中的配置文件来确定端口/应用程序。

打开该文件,查找< sites>部分。您应该找到VS项目的列表。找到您的项目(A和B)并确保两个项目都没有在同一个端口上运行

<site name="Project_A" id="17">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="C:\Projects\Somefolder\ Project_A " />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:64212:localhost" />
</bindings>
</site>
<site name="Project_B" id="18">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="C:\Projects\Somefolder\ Project_B " />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:64212:localhost" />
</bindings>
</site>

如果是这种情况,请删除一个条目(即Project_B),然后进入Visual Studio以重新创建该条目。

在VS中,进入Project_B的属性。单击Web选项卡,然后查找“服务器”部分。

输入一个新端口(即`http:// localhost:64213`)并单击“创建虚拟目录”按钮。这将在“application.config”文件中添加一个带有新关联的条目(即Project_B / port 64213)

这应该可以解决问题。希望这可以帮助

答案 2 :(得分:0)

这个问题没有标记为已回答,因为我有类似的问题,我想我会回答它。

你需要去项目&gt;属性&gt; web然后检查使用本地Web服务器框和覆盖应用程序根目录(如果适用),将路径名称更改为您正在使用的路径名称保存,它应该可以工作。