如何创建电子邮件发送服务?

2024-04-19

我已经考虑这个想法有一段时间了,想了解一下您的想法。

我想创建一个 .NET 服务来发送和跟踪电子邮件。

我的粗略想法:

  1. 在各种应用程序中,序列化 .NET 电子邮件 (System.Net.Mail.MailMessage) 对象的实例并将它们放入数据库或文件系统队列中

  2. 邮件服务/进程轮询队列并发送电子邮件

  3. 强制执行订阅/取消订阅列表/规则

  4. 跟踪打开、退回、外出自动回复等。

  5. 将状态报告回原始应用程序

有人对我应该如何开始或我可能遇到什么问题有建议吗?是否有我应该查看的现成软件/服务?


即使您使用的是可以为您完成大部分工作的高级工具,您也需要了解有关 SMTP 协议的所有知识。根据我自己使用 .NET 处理出站和入站电子邮件的经验,直到我学会远程登录到 SMTP 服务器的端口 25 并通过自己发出命令来发送电子邮件时,我才真正“明白”。

如果您发送大量电子邮件并且需要监控 NDR(未送达报告),则必须将 SMTP 信封发件人地址设置为您自己的服务器,并在所有这些电子邮件进来时对其进行解析,以找出发生了什么情况。

System.Net 电子邮件类不允许您在与 MTA 的对话中设置 MAIL FROM,而不将电子邮件标头中的 From 地址设置为相同的内容,因此您将需要使用第 3 方库,例如网络电子邮件 http://www.aspnetemail.com/如果您需要这些地址不同。

列表保姆 http://www.listnanny.net/是另一个有助于解析 NDR 等功能的工具。

我不确定是否序列化 MailMessage 对象。我认为只存储单独的数据元素本身,然后在需要时实例化 MailMessage 对象会更简单。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何创建电子邮件发送服务? 的相关文章

  • 等待 IAsyncResult 函数直至完成

    我需要创建等待 IAsyncResult 方法完成的机制 我怎样才能做到这一点 IAsyncResult result contactGroupServices BeginDeleteContact contactToRemove Uri
  • 如何在richtextbox中使用多颜色[重复]

    这个问题在这里已经有答案了 我使用 C windows 窗体 并且有 richtextbox 我想将一些文本设置为红色 一些设置为绿色 一些设置为黑色 怎么办呢 附图片 System Windows Forms RichTextBox有一个
  • Powershell - 在不安装 Excel 的情况下将 CSV 转换为 XLS

    我有一台自动生成报告的服务器 报告采用 CSV 格式 我需要能够直接加密文件 无需第三方压缩 无 WinZIP 或 WinRAR 我认为最好的想法是将 CSV 转换为 XLS 然后通过 Powershell 密码保护 XLS 文件 不幸的是
  • 如何将 Razor 视图转换为字符串?

    我想使用我的 Razor 视图作为某种发送电子邮件的模板 所以我想将我的模板 保存 在视图中 将其作为字符串读入控制器 进行一些必要的替换 然后发送它 我有有效的解决方案 我的模板作为 HTML 页面托管在某处 但我想将其放入我的应用程序中
  • 访问 XAML 中的静态字段

    如何在 xaml 中引用类的静态属性 换句话说 我想做这样的事情 Class BaseThingy public static readonly Style BaseStyle
  • 在 C# 中将 ANSI (Windows 1252) 转换为 UTF8

    I ve 之前问过这个 https stackoverflow com q 4351985 398713之前在 Stack Overflow 上以一种迂回的方式 这次想把它做好 如何将 ANSI 代码页 1252 转换为 UTF 8 同时保
  • 如何捕获一个 int

    我正在使用 IL 抛出一个 Int32 并捕获它 这只是出于好奇 我并没有试图实现任何目标 所以请不要告诉我抛出异常而不是 int method private hidebysig static void Main string args
  • Inno Setup:验证是否已安装 .NET 4.0

    我有一个需要 NET 4 0 才能运行的组件 我的 Inno Setup 安装程序如何验证它是否已安装 如果没有 则提示用户安装它 The InitializeSetup运行 Inno Setup 可执行文件时调用该函数 为自定义脚本插入此
  • ASP.net 出现错误“访问路径被拒绝”。尝试将文件上传到我的 Windows Server 2008 R2 Web 服务器时

    我有一个 ASP NET Web 应用程序 它将文件上传到 Web 服务器上的特定文件夹 本地一切工作正常 但是当我将应用程序部署到 Web 服务器时 我开始收到错误 访问路径 D Attachments myfile doc 被拒绝 我向
  • 合并两个(或更多)PDF

    背景 我需要为我的销售人员提供每周报告包 该包包含几个 5 10 个水晶报告 Problem 我想允许用户运行所有报告并且只运行单个报告 我想我可以通过创建报告然后执行以下操作来做到这一点 List
  • C#动态支持吗?

    看完之后这个帖子 https stackoverflow com questions 2674906 when should one use dynamic keyword in c sharp 4 0k和链接 我还有 2 个问题 问题 1
  • PHP:如何发送电子邮件基础知识

    我想使用 PHP 从本地主机向其他人发送电子邮件 我需要做什么才能做到这一点 例如我需要安装邮件服务器吗 如果我没记错的话 有一种语言不需要邮件服务器来发送电子邮件 这样对吗 PHP ini里面有 邮件功能 如何配置这个 我在网上查了一下
  • PhotoChooserTask 抛出未处理的异常

    我已经有了这段代码 我使用它来显示一个按钮 该按钮允许用户从他的库中选择图像并将其用作我的应用程序的背景 所以我创建了一个PhotoChooserTask 将其设置为显示相机并将其绑定到任务完成时必须执行的方法 该按钮将通过显示PhotoC
  • .NET 标准消息实际上与用于通用消息发送的 .NET Framework BrokeredMessage 不兼容吗?

    我可以指出的最好的地方之一是这个线程 https github com Azure azure service bus dotnet issues 239 https github com Azure azure service bus d
  • .NET Core 3 [JsonIgnore] 请求单个资源时不起作用

    在我的 net Core 3 0 API 中 JsonIgnore 属性无法正常工作 我在用着System Text Json 而不是旧的Newtonsoft Json 当我使用返回对象列表的资源时 例如 api Object 对象的序列化
  • 是否可以从 C++ 应用程序调用 C# 应用程序?

    我是一名编程学生 现在我已经上了两门 C 课程 这个学期我将参加我的第一门 C 课程 出于好奇 是否可以从 C 应用程序调用 C 应用程序 如果是的话 是否还可以检查运行该程序的计算机是否具有 NET框架 我只是很好奇 我想如果可能的话 这
  • 司机和提供商之间的区别

    数据库中的驱动程序和提供程序有什么区别 有没有解释一下 不胜感激 样本 ADO NET driver for MySQL vs providerName System Data EntityClient 来自 MSDN 论坛 驱动程序是安装
  • 如何使用 Roslyn 通过扩展方法、静态类中的方法以及带有 ref/out 参数的方法来访问调用

    我正在致力于创建一个开源项目 用于创建 NET UML 序列图 该项目利用名为 js sequence diagrams 的 javascript 库 我不确定 Roslyn 是适合这项工作的工具 但我想我应该尝试一下 所以我整理了一些概念
  • 调试VS 2005提示“操作不支持”

    我一直在调试 VS 2005 并将 启动外部程序 设置为 C Program Files Microsoft Visual Studio 10 0 Common7 IDE devenv exe 但按 F5 后出现此错误 尝试运行项目时出错
  • 嵌入式二进制资源 - 如何枚举嵌入的图像文件?

    我按照中的说明进行操作这本书 http www apress com book view 9781430225492 关于资源等的章节 我不太明白的是 如何替换它 images Add new BitmapImage new Uri Ima

随机推荐