我在ASP.NET中使用MVC 4创建了这个邮件发送表单。现在我想在我的Web.config中输入(使用)smpt,username,password和port number的参数。我试过这个解决方案:
在Web.config中:
<add key="smptserver" value="smptABC" />
<add key="username" value="usernameABC" />
<add key="password" value="passwordABC"/>
<add key="portNum" value="123"/>
在我的Controller.cs中我有这个:
using System.Configuration;
...
string host = ConfigurationManager.AppSettings["smptserver"];
string user = ConfigurationManager.AppSettings["username"];
string pass = ConfigurationManager.AppSettings["password"];
string port = ConfigurationManager.AppSettings["portNum"];
using (var client = new SmtpClient
{
Host = host,
Port = port,
EnableSsl = true,
Credentials = new NetworkCredential(user, pass),
DeliveryMethod = SmtpDeliveryMethod.Network
})
{ ...
我也找到了这个解决方案(全部相同,但只有这个改变了):
string host = ConfigurationSettings.AppSettings["smptserver"];
string user = ConfigurationSettings.AppSettings["username"];
string pass = ConfigurationSettings.AppSettings["password"];
string port = ConfigurationSettings.AppSettings["portNum"];
[other is same]
“ConfigurationManager”和“ConfigurationSettings”之间的差异是什么? 这是使用Web.config设置参数的正确方法吗?
感谢您的解释。
答案 0 :(得分:1)
根据the documentation,ConfigurationSettings
公开了不推荐使用(标记为“过时”)的功能。 (您的代码应在编译时生成警告消息以指示此情况。如果不是,请重新打开警告。)