当您打开包含 IISExpress Web 项目的 Visual Studio 解决方案时,applicationHost.config<site>
元素配置会更新。如果您随后为单独的分支打开解决方案,则<site>
配置可能会被覆盖以指向该单独的分支。
例如,假设您有一个解决方案的两个分支,其中包含一个配置为在端口 4000 上使用 IISExpress 的 Web 项目。当您打开 Branch1 的解决方案时,applicationHost.config 将使用<site>
在 localhost:4000 指向的注册站点的元素进行更新到 Branch1 的文件夹。当您“开始调试”您的解决方案时,您的浏览器会打开 localhost:4000 并且一切正常。
如果您随后打开 Branch2 的解决方案,将再次修改 applicationHost.config,覆盖该<site>
元素,以便 localhost:4000 现在指向 Branch2。现在,如果您在打开的 Branch1 解决方案或打开的 Branch2 解决方案中“开始调试”,则 localhost:4000 将指向 Branch2,因为这就是 applicationHost.config 文件中的内容。
要解决此问题,请将两个分支配置为使用不同的端口,然后 Visual Studio 将管理两个单独的 applicationHost.config<site>
元素,每个分支一个。每次创建新分支时,您都需要记住配置一个新的端口号。