我的Web.config文件中有一些应用程序设置,用于从系统内发送电子邮件。相关部分如下:
<configuration>
...
<appSettings>
<add key="webpages:Enabled" value="false" />
<add key="emailRecipient" value="my email"/>
<add key="emailSubject" value="subject"/>
(other settings for contacting the mail server)
</appSettings>
...
</configuration>
在我的存储库中,我这样使用它:
使用System.Web.Configuration;
MailModel email = new MailModel();
email.EmailTo = WebConfigurationManager.AppSettings["emailRecipient"];
email.Subject = WebConfigurationManager.AppSettings["emailSubject"];
加上其他行以获取与邮件服务器联系的设置。
我遇到的问题是,在调试器中,WCM.AppSettings
包含5个值:
WebConfigurationManager.AppSettings.AllKeys
{string[5]}
[0]: "webpages:Version"
[1]: "webpages:Enabled"
[2]: "PreserveLoginUrl"
[3]: "ClientValidationEnabled"
[4]: "UnobtrusiveJavaScriptEnabled"
我的电子邮件配置设置发生了什么变化?
我查看了其他两个Stack Overflow问题,以确保我没有犯任何明显的错误。 (How to read appSettings section in the web.config file?和Can't read appSettings value from Web.Config)所以问题不明显。
已编辑添加:
我发现了我的问题,这有点令人尴尬。我已将设置放入~/Views/Web.config
而不是~/Web.config
。一旦我修复了它,设置工作正常。 Mods,请关闭。