我对我认为简单的事情有疑问。我在我的网站上有一个区域,我想创建一个特定于此区域的Web.config文件,但无论我在哪里放置此配置文件,我在appSettings中设置的键都返回“null” “当我访问它们时,所以我不确定我应该做什么。这是我的网站结构:
Site
[usual site stuff like Views, Models, Controllers]
Web.config
Areas
MyArea
Web.config
[usual site stuff like Views, Models, Controllers]
主站点上的web.config看起来像......
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="MyMainKey" value="MyTestValue"/>
</appSettings>
<!--all of the standard asp.net mvc config stuff -->
</configuration>
我的区域配置看起来像
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="MyAreaConfigValue" value="MyAreaTestValue"/>
</appSettings>
<!--all of the standard asp.net mvc config stuff -->
</configuration>
在我的Regions / MyArea / Controllers文件夹中存在的控制器操作中,我试图像这样访问它:
string my_area_config_val = System.Configuration.ConfigurationManager.AppSettings["MyAreaTestValue"];
但my_area_config_val为空。
在我的主站点(不在我的区域)的控制器操作中,我可以
string my_main_config_val = System.Configuration.ConfigurationManager.AppSettings["MyTestValue"];
和my_main_config_val等于“MyTestVal”,正如预期的那样。
感谢。 穆斯塔法
答案 0 :(得分:2)
Web.config
文件位于Area/Views
目录中。我没有找到任何具体的事实,但从我在做一些研究时看到的是,区域内的<appSettings>
来自Web.config
文件永远不会被使用。下面是一个简短陈述的网站: