15

我的情况:
我正在开发一个 ASP.NET MVC 项目并在 IIS-Express 中进行调试。有时当我们创建一个临时分支时,这个分支会使用同一个端口进行调试。这意味着 IIS 中的虚拟目录是相同的,我不能同时运行它们。

它在 vs2010 中是如何工作的:
这不是一个真正的问题,因为我不想同时运行它们。但是,在 VS2010 中,我第一次打开分支时会收到警告。它问我是否要重新映射 URL。当我后来返回打开后备箱时,我会收到相同的警告(请参阅https://stackoverflow.com/a/3093534/210336)。 vs2010中的消息

它如何在 vs2012 中不起作用:
现在在 VS2012 中,我不再收到警告。如果我忘记手动进入设置并按“创建虚拟目录”(这已经发生了几次),那么当我在分支中单击运行时,它实际上会运行主干。这可能非常令人困惑。特别是如果我尝试调试或系统因异常而中断。来自主干的源文件将在分支解决方案中打开。然后我认为我正在编辑分支,但实际上我正在编辑主干...... VS2012中我需要按下的按钮

无论如何让VS2012执行与VS2010相同的检查?

还是我在做/理解其他完全错误的事情?

4

1 回答 1

1

VS 实际上会编辑在这些路径之一中找到的 IIS Express 配置文件

%userprofile%\documents\iisexpress\config\applicationhost.config
%userprofile%\my documents\iisexpress\config\applicationhost.config

当把它留给 VS 时,我倾向于看到重复和冲突的配置。

对于本地开发,我更喜欢从 cmd 或 powershell 脚本启动 IIS Express,因为它不需要附加(但可以附加)并且让我可以控制配置。我制作了 iis 配置的副本并在 iis express 命令中指定了配置文件。我有一个 powershell 脚本,它根据执行目录设置路径,所以无论哪个分支,它总是设置为我正在工作的那个。

以下是有关从命令行运行 iis express 的一些信息:

http://www.iis.net/learn/extensions/using-iis-express/running-iis-express-from-the-command-line

这是从 powershell 运行 iis express 的一个很好的资源:

https://blog.differentpla.net/post/UaYcAPDfiVJBAAAC/running-iis-express

于 2013-12-24T17:52:20.760 回答