我们正在与外部邮件服务进行交互。为了能够进行有效的端到端测试,我们希望能够检查电子邮件是否已被有效接收。
我们可以选择收件人的电子邮件地址,但外部系统基本上是黑盒子。 能够在C#中获取和操纵该电子邮件的最有效策略是什么?
非常感谢。
Alberto
答案 0 :(得分:0)
听起来你需要检查一个POP3邮箱。开箱即用,.NET框架不支持POP3,您需要第三方库,或者自己动手。我个人喜欢使用Dart的POP3库,尽管它是商业性的。
答案 1 :(得分:0)
我找到了这些库:
csharpmail的用法似乎很简单
//Receive mail
Pop3Client cl = new Pop3Client();
cl.ServerName = "your server name";
cl.UserName = "your name";
cl.Password = "pass";
cl.Ssl = false;
if (cl.Authenticate() == true)
{
Int32 MailIndex = 1;
Pop3Message mg = cl.GetMessage(MailIndex);
String mailTo = mg.To;
String mailCc = mg.Cc;
String title = mg.Subject;
String bodyText = mg.BodyText;
//Save Image to your local hard disk
foreach(Pop3Content ct in mg.Contents)
{
String filePath = "C:\MyFolder\" + ct.ContentDisposition.FileName;
ct.DecodeData(filePath);
}
}