我最近将我的“我的文档”文件夹从 C: 移动到 D: 驱动器。这似乎破坏了我在 Visual Studio 中调试 Web 应用程序的能力。我假设 Visual Studio 在 applicationhost.config 中创建了如下所示的条目,我想知道根 virtualDirectory 的第一个 physicalPath 来自哪里,因为我相当确定这就是问题所在(我几乎已经确认 VS打开解决方案时创建如下条目):
<site name="My.Application-Site" id="2">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="C:\Users\myname\Documents\My Web Sites\My.Application-Site" />
</application>
<application path="/My" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="D:\repos\MyCheckout\My\My.Application" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:49924:localhost" />
</bindings>
</site>
当我尝试在调试器中运行该应用程序时,浏览器会弹出一个错误,相关信息如下。注意 web.config 的路径仍然使用 C:,即使它似乎知道 tracelogfiles 的正确位置:
HTTP Error 500.19 - Internal Server Error
The requested page cannot be accessed because the related configuration data for the page is invalid.
Config Error Cannot read configuration file
Config File \\?\C:\Users\myname\Documents\My Web Sites\My.Application-Site(2)\web.config
Requested URL http://localhost:50616/My/
Request Tracing Directory D:\users\myname\My Documents\IISExpress\TraceLogFiles\
所以问题是在 Visual Studio(或 IIS)中的哪个位置确定了 web.config 文件的路径,以及如何更改它。和/或是否有任何其他人可以提供有关为什么我收到此 500.19 错误的其他原因或见解?
最近的另一个变化(除了移动我的文档)是我卸载了 VS Ultimate 2013 的试用版并安装了 VS Pro 2013——这是否会导致这种情况?在我上次能够正常调试应用程序和收到此错误之间的时间之间进行了两项更改。
最佳答案
对于寻找 答案的人“在 Visual Studio(或 IIS)中,确定了 web.config 文件的路径,以及如何更改它” 或 “我将我的应用程序从其原始文件夹移动”
右键单击 Project Properties > Web Tab 和 Create Virtual Directory 按钮。
当我在两台不同的机器上开发(当然还有调试)我的应用程序时,这一切都发生了,这些机器有不同的路径(和驱动器)到由 git 管理的源代码。
希望能帮助到你
关于asp.net - Visual Studio 在applicationhost.config 中为virutalDirectory 设置了错误的路径?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24742003/