我正在开发一个用来发送电子邮件的.NET 3.5库,我遇到了一个问题。我将system.net配置放到了app.config中
<system.net>
<mailSettings>
<smtp from="mail@domain.com">
<network host="myserver.com" port="25" defaultCredentials="true" />
</smtp>
</mailSettings>
</system.net>并且我不带参数实例化SmtpClient:
SmtpClient client = new SmtpClient();但是配置没有被读取(我正在尝试用NUnit测试库),我得到了一个System.InvalidOperationException,因为配置没有被读取,因此主机是空的。
难道不应该自动读取配置吗?
发布于 2011-08-30 22:14:00
确保将配置块(如上所示)添加到{appName}.exe.config或web.config中-类库的配置是在运行时从其中一个文件中获取的,而不是从类库的app.config中获取的。
发布于 2011-08-30 22:37:54
我刚刚意识到我绝对是在以错误的方式做这件事(还有a similar post from John about it,解决方案就在那里…)。
邮件设置仅在应用程序级别可用,因此测试项目应该知道您的设置,以便将它们考虑在内。
https://stackoverflow.com/questions/7244589
复制相似问题