发送电子邮件到本地主机/“捕获”外发电子邮件

时间:2019-12-10 00:49:44

标签: c# email smtp email-integration

我正在使用许多设备,这些设备的操作软件可以选择发送错误电子邮件。我宁愿在运行它们的主机PC上捕获该电子邮件的详细信息(例如,用于记录日志,通过Slack自动传达详细信息等),而不是将它们发送到某个地方的收件箱。

是否有一种方法可以让该软件通过电子邮件发送一个地址,该地址实际上是在同一台PC上运行的轻量级代码段,类似于SMTP服务器(使我可以获取邮件的内容)?我见过的其他解决方案是建立一个功能完备的服务器,这似乎有些过分。

1 个答案:

答案 0 :(得分:0)

您可以配置SmtpClient将电子邮件保存到特定文件夹,而不是通过有线方式发送。检查this答案。

此外,您还必须以可以与“发件人”的不同实现配合使用的方式设计系统,以便可以在需要时(例如在测试期间)替换它。在这种情况下,您可以轻松地提供代理实现,该实现将捕获电子邮件内容,然后将其发送到localhost,或添加方面(进行重试,记录性能...)。