Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 自动电子邮件发送-最重要的问题_C#_.net_Email_Spam - Fatal编程技术网

C# 自动电子邮件发送-最重要的问题

C# 自动电子邮件发送-最重要的问题,c#,.net,email,spam,C#,.net,Email,Spam,我的问题有点复杂,所以我将从理论开始: 事实上,我想创建一个软件,它和时事通讯公司使用的软件一样有效。我是说,尽可能有效 例如,有一家公司有配置良好的smtp服务器(PTR、DKIM、DNS、SFP等),有服务器管理员,但没有自动向客户发送电子邮件的工具。所以他们使用通讯公司。 我的目标只是“代码方面”。关于“代码端”,我有几个问题: Q1:在实施“自动电子邮件发送”应用程序的过程中,应该考虑什么? 问题2:解决这些问题的最佳方法是什么? 问题3:有没有办法检查是否有人将我的电子邮件放入垃圾邮件

我的问题有点复杂,所以我将从理论开始:

事实上,我想创建一个软件,它和时事通讯公司使用的软件一样有效。我是说,尽可能有效

例如,有一家公司有配置良好的smtp服务器(PTR、DKIM、DNS、SFP等),有服务器管理员,但没有自动向客户发送电子邮件的工具。所以他们使用通讯公司。 我的目标只是“代码方面”。关于“代码端”,我有几个问题:

Q1:在实施“自动电子邮件发送”应用程序的过程中,应该考虑什么?

问题2:解决这些问题的最佳方法是什么?

问题3:有没有办法检查是否有人将我的电子邮件放入垃圾邮件? 我的意思是,当有人这样做时,他的smtpserver必须知道这一点。他的smtpserver也知道这条消息的来源,对吗?所以我想。。大概这对每个人都有好处


我的研究:

我花了一些时间研究“群发邮件”这个主题,所以我想写我已经知道的东西(没有意义,你会浪费时间写我已经知道的东西)。如果我错了,请纠正我,或者补充一些在该主题中很重要的东西

1) 回退和电子邮件错误报告

我的想法是:我有两条线。首先,从DB读取消息并发送它们。第二,检查收件箱中的新邮件(通过POP3或IMAP,我想我会做这两个选择,IMAP更好,因为我不想得到整个邮件)并解析它们。如果邮件类似于“未送达邮件已退回发件人”,并带有备注:“500无此类用户”,我将从列表中删除地址。 在这一点上,我想问一下我的解决方案和反弹的可能原因,也许有一个官方的原因清单

2) 在电子邮件中正确使用MIME

因此,基本上,如果消息(正文)是用C#创建的(我的意思是从某种模式),并以简单的“文本”形式发送(只能选择更改为html),而不需要任何脚本或类似的东西。。这些信息是安全的,对吗?“MailMessage.IsBodyHtml=true;”-这很糟糕

3) 实时跟踪您的电子邮件 这是时事通讯公司提供的非常受欢迎的功能。这对我来说很奇怪。要跟踪您的电子邮件,您必须以HTML(这不是一个好主意)的形式发送消息,并带有img、声音或某些组件。带有图片的Html电子邮件大部分都会变成垃圾邮件。我甚至不确定这是否合法?我的意思是跟踪这样的人

4) 我还发现了这样的情况:“当你发送太多的邮件时,一些服务器会禁止你发送,所以你需要洗牌并观察你的队列(例如,将一封邮件发送到服务器)joe@example.com,然后三个到其他域,只有另一个到otheraddress@example.com)" -我认为纠正地址列表的创建算法不会完成。但这是真的吗

我想,就是这样。我的任何问题的任何答案都将是伟大的。
谢谢你抽出时间

考虑在将来把你的问题表述得不那么冗长。人们很可能会读到它们……嗨,马歇尔。很抱歉,我不得不结束这个问题,因为它不适合SO平台。相反,每个问题应该问一个问题,并且只问与编程相关的问题。你的第一个问题“应该考虑什么”是一个讨论型的问题,在这里根本不合适,无论如何都会被关闭。您需要在其他地方对此主题进行一些研究,当您遇到与编程相关的问题时,欢迎您询问这些问题。但是,试着将每个问题限制为一个问题。谢谢