1

这是 IIS7.5 和 .NET 4.0。这是场景:

  1. localhost在 path 处设置了一个网站C:\wwwroot\;它只包含一个Default.html文件。
  2. AC# Web 应用程序MyWebApp存储在C:\MyWebApp\(Web 根目录之外)
  3. MyWebApplocalhost在上注册为 Web 应用程序/foo/bar/MyWebApp
  4. MyWebApp在其根目录中有一个带有连接字符串等的 web.config

当我访问时http://localhost/foo/bar/MyWebApp,它会引发有关缺少连接字符串的异常。原来ConfigurationManager它不包含来自web.config 的任何配置。MyWebApp服务器会解析 web.config,因为如果我添加格式错误的 XML,它会引发异常。配置数据只是没有合并。

我发现localhost必须包含一个物理目录C:\wwwroot\foo\bar\MyWebApp才能C:\MyWebApp\Web.config被包含在内!

我一直无法找到记录此行为的任何地方。在虚拟路径中注册的 Web 应用程序是否需要存在物理路径?

4

0 回答 0