C# 如何在ASP.NET中使用Exchange web服务下载未读电子邮件附件?
我正在使用ExchangeServer2007SP3 我能够使用以下代码连接ExchangeWeb服务C# 如何在ASP.NET中使用Exchange web服务下载未读电子邮件附件?,c#,asp.net,outlook,exchange-server,exchangewebservices,C#,Asp.net,Outlook,Exchange Server,Exchangewebservices,我正在使用ExchangeServer2007SP3 我能够使用以下代码连接ExchangeWeb服务 ExchangeServiceBinding esb = new ExchangeServiceBinding(); esb.RequestServerVersionValue = new RequestServerVersion(); esb.RequestServerVersionValue.Version = ExchangeVersionType.Exchange2007_SP1; e
ExchangeServiceBinding esb = new ExchangeServiceBinding();
esb.RequestServerVersionValue = new RequestServerVersion();
esb.RequestServerVersionValue.Version = ExchangeVersionType.Exchange2007_SP1;
esb.Credentials = new NetworkCredential("<user_id>", "<password>", "<domain>");
esb.Url = @"https://<server_fqdn>/ews/Exchange.asmx";
ExchangeServiceBinding esb=新的ExchangeServiceBinding();
esb.RequestServerVersionValue=新的RequestServerVersion();
esb.RequestServerVersionValue.Version=ExchangeVersionType.Exchange2007_SP1;
esb.Credentials=newnetworkcredential(“,”,“);
esb.Url=@“https:///ews/Exchange.asmx";
我正在寻找代码下载未读的附件
你能帮帮我吗 我发现:
private static void ProcessItems(ExchangeService exchangeService)
{
var offset = 0;
const int pageSize = 100;
FindItemsResults<Item> result;
do
{
var view = new ItemView(pageSize, offset)
{
SearchFilter = new SearchFilter.IsEqualTo(EmailMessageSchema.IsRead, false)
};
result = exchangeService.FindItems(WellKnownFolderName.Inbox, view);
foreach (var item in result)
{
ProcessItem(item);
}
offset += pageSize;
} while (result.MoreAvailable);
}
private static void ProcessItems(ExchangeService ExchangeService)
{
var偏移=0;
常量int pageSize=100;
查找结果;
做
{
变量视图=新项目视图(页面大小、偏移量)
{
SearchFilter=newsearchfilter.IsEqualTo(EmailMessageSchema.IsRead,false)
};
结果=exchangeService.FindItems(WellKnownFolderName.Inbox,视图);
foreach(结果中的var项目)
{
处理项目(项目);
}
偏移量+=页面大小;
}while(result.moreavable);
}
然后从方法ProcessItem
中,您可以做任何您想做的事情,比如下载附件等等
资料来源: