我通常把我的SMTP参数ASP.NET应用程序中<mailsettings>
元素<system.net>
在web.config中。
有没有在应用程序设置下在Azure门户网站或其他地方来配置这些方式,还是我通过编辑web.config文件来管理?
我的意思不是从appSetting
键阅读,然后塞进他们进入System.Net.Mail
对象各自的性质在。我想要的参数,例如主机,端口,凭证,发送者等,被自动地从当<mailSettings>
被实例化的配置文件(SmtpClient
元件)填充。
我的意思不是从
appSetting
键阅读,然后塞进他们进入System.Net.Mail
对象各自的性质在。我想要的参数,例如主机,端口,凭证,发送器等,当SmtpClient
被实例化被自动从配置文件中填充。
你不能。
有一个替代的解决方案,但是。看一看在应用服务Application Settings。 (这是在没有任何设置将覆盖在web.config中名称相同的设置。)
由于您使用的mailSettings
元素的自动配置的东西,你将不得不改变你的代码,不依赖于自动配置。阅读设置自己和它们应用到你SmpClient
。
你可以创建将使用应用程序设置来构建定制SmtpClient
:
var smtpServerHost = CloudConfigurationManager.GetSetting("SmtpServerHost");
var smtpServerPort = int.Parse(CloudConfigurationManager.GetSetting("SmtpServerPort"));
var smtpServerUserName = CloudConfigurationManager.GetSetting("SmtpServerUserName");
var smtpServerPassword = CloudConfigurationManager.GetSetting("SmtpServerPassword");
var client = new SmtpClient(smtpServerHost, smtpServerPort);
client.Credentials = new NetworkCredential(smtpServerUserName, smtpServerPassword);
(启发对这个职位:How to set mailSettings from Azure App Service - Application settings )