这应该是一个简单的问题,
我正在 IIS 下构建一个站点,其中一部分位于像 \blog 这样的子目录中, 我将其转换为一个虚拟目录。
根文件夹有自己的 web.config,博客子文件夹有自己的 .
在根的 web.config我使用:
<pages theme="DefaultTheme">
并且子文件夹似乎受此影响,它会导致错误提示我没有这个主题。
解决办法是什么 ?
这应该是一个简单的问题,
我正在 IIS 下构建一个站点,其中一部分位于像 \blog 这样的子目录中, 我将其转换为一个虚拟目录。
根文件夹有自己的 web.config,博客子文件夹有自己的 .
在根的 web.config我使用:
<pages theme="DefaultTheme">
并且子文件夹似乎受此影响,它会导致错误提示我没有这个主题。
解决办法是什么 ?
查看:
<location> ... </location>
可以加载到 web.config 中的元素。并非所有内容都可以在它下运行,但是您可以覆盖子文件夹以使其没有主题。或者您可以将主题限制为仅具有这些标签的顶级文件夹?
Web.Config 可以嵌套,因此 pages 元素将影响范围内它下面的所有其他应用程序(例如,有一个 web.config 在框架的 config 文件夹中设置各种默认值)。
如果您不希望博客文件夹中页面上的主题,您是否尝试在子 web.config 中将主题设置为空字符串?这是属性的有效值,应该覆盖父级中的设置。
主题通过查看应用程序根目录下的 Themes 文件夹来工作 - 在这种情况下,在 /blogs 文件夹下,如果在其中找不到,它将抛出此异常。
你想添加
<clear/>
到子文件夹的 web.config。这将从您放置的任何部分清除父配置值clear into
。例如,如果您想从父配置文件中清除任何连接字符串,您可以这样做:
<connectionStrings>
<clear/>
<!-- add new connection strings here -->
</connectionStrings>
除了将两个应用程序移动到子文件夹并确保父文件夹没有 Web.config 之外,我无法找到解决方案。