Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.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保存发送和接收电子邮件_C#_Email_Outlook - Fatal编程技术网

C# 使用标识符C保存发送和接收电子邮件

C# 使用标识符C保存发送和接收电子邮件,c#,email,outlook,C#,Email,Outlook,我编写了一个C表单应用程序,可以使用Outlook 2013发送和接收电子邮件。我用MAPI命名和平。Outlook.\u NameSpace\u ns=\u app.GetNamespaceMAPI;。 我的问题是:如何为电子邮件创建标识符? 我想将其保存到sql数据库表中,稍后再识别该表是否已包含此邮件。 我找到了mail.CreationTime和mail.SenderEmailAddress,但在最后一行代码中的send Method之后,邮件已为空。 谢谢你的帮助 我发送我的发送消息代

我编写了一个C表单应用程序,可以使用Outlook 2013发送和接收电子邮件。我用MAPI命名和平。Outlook.\u NameSpace\u ns=\u app.GetNamespaceMAPI;。 我的问题是:如何为电子邮件创建标识符? 我想将其保存到sql数据库表中,稍后再识别该表是否已包含此邮件。 我找到了mail.CreationTime和mail.SenderEmailAddress,但在最后一行代码中的send Method之后,邮件已为空。 谢谢你的帮助

我发送我的发送消息代码:

     Outlook._Application _app = new Outlook.Application();
 Outlook._NameSpace _ns = _app.GetNamespace("MAPI");
 Outlook.MAPIFolder inbox = _ns.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox);
 Outlook.MailItem mail = (Outlook.MailItem)_app.CreateItem(Outlook.OlItemType.olMailItem);
 mail.To = ActEmail.To;
 mail.CC = ActEmail.CC;
 mail.Subject = ActEmail.Subject;
 mail.Body = ActEmail.Body;
 mail.Importance = Outlook.OlImportance.olImportanceNormal;
 if(ActEmail.Attachments.Count != 0)
 {
 foreach (Attachment item in ActEmail.Attachments)
 {
 mail.Attachments.Add(item.Attachment1, Outlook.OlAttachmentType.olByValue, 1, item.Attachment1);//.Substring(item.Attachment1.LastIndexOf('\') + 1));
 }
 }
((Outlook._MailItem)mail).Send();
 string theString = mail.CreationTime + mail.SenderEmailAddress;

使用MailItem.EntryID。请注意,如果将邮件移动到其他文件夹,它将发生更改。

获取一组唯一属性sender、recipient、subject、body、creation date等,将它们连接起来,并使用SHA-1或MD5对结果进行散列。MailItem.EntryID不稳定,不可信任。您可以使用MailItem.conversationIndex