gpt4 book ai didi

c# - 应用程序电子邮件架构

转载 作者:太空宇宙 更新时间:2023-11-03 11:50:17 25 4
gpt4 key购买 nike

我继承了一个用 c# 编写的 ASP.NET 网站,该网站使用 mssql 2k8 数据库,该数据库基于使用数据库邮件通过触发器插入消息表来发送电子邮件:|任何失败之一和太多回滚,都不会被记录下来,也不会发送电子邮件...

真是一团糟。我过去写过几个电子邮件子系统,我想在开始重写之前我会要求输入。在 Microsoft 环境中排队/发送电子邮件的最佳做法是什么?我应该将电子邮件推送到队列,从那里提取、发送、记录吗? DB Email 似乎失败了。队列是在 SQL Server 中管理的吗? SQL Server 是否调用 C# 应用程序?如果电子邮件发送失败,恢复的好方法是什么?

感谢您的任何见解!

最佳答案

我认为您将系统功能的使用完全分开是正确的:对数据使用 SQL,并将电子邮件推送到完全不同的“服务提供商”;我假设您有某种业务逻辑层来协调这一点?

我不能根据经验(特别是电子邮件)谈论“最佳实践”,但是抽象出电子邮件服务(就像抽象出数据访问一样)绝对是正确的道路,那就是可能是您现在需要做出的关键决定。然后,您可以使用不同的电子邮件实现方式(如果您真的愿意,还可以包括 SQL)。

取决于数量——您是看异步调用还是同步调用? WCF 似乎是处理通信的良好候选者 - 这将允许您将数据(用于电子邮件)发送到内置队列的端点,或者您可以调用(通过 WCF)同步运行的 Web 服务。

关于c# - 应用程序电子邮件架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2300993/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com