我有一个应用程序会定期轮询2010年的Exchange服务器电子邮件收件箱,以查找具有特定主题的电子邮件。
我在VS2008中使用c#,。Net 3.5。我可以成功连接到,检索我需要的所有电子邮件。
如果电子邮件的正文包含使用xsd验证的XML,通常这样可以正常工作,但是当电子邮件的BodyType为HTML时,xml标记不会显示,并且无法通过xsd验证。
如果我在电子邮件正文中做了一个show source,那么xml标签就在那里。我的问题是,如何获取实际的xml文本而不是html文本? 我使用
启动服务m_Service = new ExchangeService(ExchangeVersion.Exchange2010);
我正在使用此返回搜索结果...
public void getEmails(string searchType)
{
ItemView itemView = new ItemView(int.MaxValue);
SearchFilter searchFilter = new SearchFilter.ContainsSubstring(EmailMessageSchema.Subject, EmailSubject);
SearchResults = Service.FindItems(GetFolderName(searchType), searchFilter, itemView);
}
并加载各个电子邮件
foreach (Item item in SearchResults)
{
item.Load();
EmailMessage mes = (EmailMessage)item;
string emailBody = item.Body.Text;
}