.net 将电子邮件移动到SQL Server

.net 将电子邮件移动到SQL Server,.net,sql-server,email,exchange-server,.net,Sql Server,Email,Exchange Server,我想在.net中编写一个应用程序,它将扫描邮箱并将新项目放入SQL Server数据库 只是想知道在API方面实现这一点的最佳方法是什么。我是否可以使用exchange专用的或第三方的 能够在单独的字段中保存收件人/发件人/抄送、标题、电子邮件正文和其他元数据对我来说很重要 谢谢请查看.net中的ExchangeService。您可以连接到Exchange服务器并执行各种操作 您还需要将Microsoft.Exchange.WebServices和Microsoft.Exchange.WebSe

我想在.net中编写一个应用程序,它将扫描邮箱并将新项目放入SQL Server数据库

只是想知道在API方面实现这一点的最佳方法是什么。我是否可以使用exchange专用的或第三方的

能够在单独的字段中保存收件人/发件人/抄送、标题、电子邮件正文和其他元数据对我来说很重要


谢谢

请查看.net中的
ExchangeService
。您可以连接到Exchange服务器并执行各种操作

您还需要将
Microsoft.Exchange.WebServices
Microsoft.Exchange.WebServices.Auth
程序集添加到项目中

像这样使用它

ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2010_SP2);
            // Setting credentials is unnecessary when you connect from a computer that is
            // logged on to the domain.
service.Credentials = new WebCredentials(sUserName, sPassword, sDomain);
ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, sslPolicyErrors) => true;
service.Url = new Uri(lsRootUri);
Folder inbox = Folder.Bind(service, WellKnownFolderName.Inbox);        

inbox.Load();
ItemView iv = new ItemView(50);
FindItemsResults<Microsoft.Exchange.WebServices.Data.Item> emails = inbox.FindItems(iv);
foreach (Microsoft.Exchange.WebServices.Data.Item email in emails)
{

}
ExchangeService服务=新的ExchangeService(ExchangeVersion.Exchange2010_SP2);
//当您从一台未连接的计算机进行连接时,不需要设置凭据
//登录到域。
service.Credentials=新的WebCredentials(sUserName、sPassword、sDomain);
ServicePointManager.ServerCertificateValidationCallback=(发送方、证书、链、sslPolicyErrors)=>true;
Url=newURI(lsRootUri);
Folder inbox=Folder.Bind(服务,WellKnownFolderName.inbox);
inbox.Load();
ItemView iv=新的ItemView(50);
FindItemsResults电子邮件=收件箱。FindItems(iv);
foreach(电子邮件中的Microsoft.Exchange.WebServices.Data.Item电子邮件)
{
}

除非您真的想自己编写,否则本产品应该满足您的需求:


不便宜,但功能齐全。

很酷,我稍后会玩一下,谢谢。