2012-09-18 67 views
0

我可以使用以下代码成功检索并从Outlook读取电子邮件。如何从Outlook中删除电子邮件?我尝试了几种方法,但无法使其工作。如何使用C#从Outlook中删除电子邮件?

var svc = new ExchangeService(ExchangeVersion.Exchange2007_SP1); 
svc.Credentials = CredentialCache.DefaultNetworkCredentials; 
svc.AutodiscoverUrl(emailAddress); 
EmailMessage email = EmailMessage.Bind(svc, emailMessage.Id, props); 
+0

你试过的方法是什么?你看到的错误(或行为)是什么? – Sepster

+0

另一个问题是,您如何知道您是否成功删除了一封电子邮件。你基本上正在交换服务器。所以并不是所有的沟通结果都可以在前景中看到。删除电子邮件就是其中之一。 –

回答

0

我不知道(即,可能被证明不正确的),你可以删除使用此API消息。该MSDN article for Microsoft.Exchange.Data.Transport.Email Namespace这样说:

的Microsoft.Exchange.Data.Transport.Email命名空间包含支持创建,读取,写入和修改电子邮件消息类型。

EmailMessage类中可用成员的进一步检查表明您可以访问各种属性,但没有可用的“删除”操作/方法。

根据您的情况,使用Outlook Redemption这样的工具可能会带来更好的运气,该工具将允许对Outlook和/或Exchange进行低级别的编程访问(但如果您需要通过交换Web服务,则可能不合适) 。

+0

终于弄明白了! 只需使用以下语法: emailMessage.Delete(DeleteMode.MoveToDeletedItems); 谢谢 –

+0

@ user1647773感谢您的接受......但为了今后其他用户对此问题/答案的实用性,您是否介意澄清,如果您所指的语法是“Microsoft.Exchange.Data.Transport.Email '或Outlook的赎回? – Sepster

相关问题