我有几个 Web 应用程序,它们都使用发送电子邮件,无论是通过联系表格还是某种通知更新等。
我发现的问题是实际上没有任何方法可以跟踪从 Web 应用程序发送的电子邮件,所以我想出了一个可能的解决方案:
这真的很简单——我不想让每个 Web 应用程序自己发送电子邮件,而是想通过创建一个中央电子邮件发件人服务来统一这个过程。
基本而言,每个应用程序只需在数据库的“出站电子邮件”表中创建一行,其中包含收件人、发件人、主题、内容数据。
然后,电子邮件发件人服务(Win 服务)将从发件箱中挑选电子邮件,发送它们,然后标记为已发送。
即使我将“基本电子邮件”信息(收件人、发件人、主题、内容)存储在数据库中,我真正想做的也是存储“MailMessage”对象本身,以便电子邮件发件人服务可以反序列化原始 MailMessage,因为这将允许任何应用程序完全自定义电子邮件。
以这种方式使用 MailMessage 对象有什么问题吗?
更新:另一个目标是存储已发送电子邮件的日志 - 因此使用数据库的原因。