How can I make email go to a local folder during testing?(如何在测试期间将电子邮件发送到本地文件夹?)
问题描述
如何测试从我的应用程序发送电子邮件而不会淹没我的收件箱?
How can I test sending email from my application without flooding my inbox?
有没有办法告诉 IIS/ASP.NET 如何将电子邮件传送到本地文件夹以供检查?
Is there a way to tell IIS/ASP.NET how to deliver email to a local folder for inspection?
推荐答案
是的,有办法.
你可以像这样改变 web.config当您发送电子邮件时,它会而是创建为 .EML 文件c:LocalDir.
You can alter web.config like this so that when you send email it will instead be created as an .EML file in c:LocalDir.
<configuration>
<system.net>
<mailSettings>
<smtp deliveryMethod="SpecifiedPickupDirectory">
<specifiedPickupDirectory pickupDirectoryLocation="c:LocalDir"/>
</smtp>
</mailSettings>
</system.net>
</configuration>
您还可以创建 SmtpClient
类具有这些相同的设置,如果您不想/不能更改 web.config.在 C# 中看起来像这样:
You can also create an instance of the SmtpClient
class with these same settings, if you don't want to/can't change the web.config. In C# that looks something like this:
var smtpClient = new SmtpClient();
smtpClient.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory;
var emailPickupDirectory = HostingEnvironment.MapPath("~/EmailPickup");
if (!Directory.Exists(emailPickupDirectory)) {
Directory.CreateDirectory(emailPickupDirectory)
}
smtpClient.PickupDirectoryLocation = emailPickupDirectory;
这篇关于如何在测试期间将电子邮件发送到本地文件夹?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何在测试期间将电子邮件发送到本地文件夹?


- C#MongoDB使用Builders查找派生对象 2022-09-04
- 输入按键事件处理程序 2022-01-01
- 良好实践:如何重用 .csproj 和 .sln 文件来为 CI 创建 2022-01-01
- WebMatrix WebSecurity PasswordSalt 2022-01-01
- 如何用自己压缩一个 IEnumerable 2022-01-01
- 带有服务/守护程序应用程序的 Microsoft Graph CSharp SDK 和 OneDrive for Business - 配额方面返回 null 2022-01-01
- Web Api 中的 Swagger .netcore 3.1,使用 swagger UI 设置日期时间格式 2022-01-01
- C# 中多线程网络服务器的模式 2022-01-01
- 在哪里可以找到使用中的C#/XML文档注释的好例子? 2022-01-01
- MoreLinq maxBy vs LINQ max + where 2022-01-01