Exchange server 当主体不为空时,UniqueBody为空
我从以前的开发人员那里继承了一个项目的责任,该开发人员将收到的电子邮件处理成客户支持单 它基本上工作正常,但它有一个特定的电子邮件问题,我不知道为什么。 在Outlook中,电子邮件显然有正文(一些短文本、图像和签名)。这是一条新消息,不是回复。 exchange server版本为2013 但是当被下面的代码处理时,Exchange server 当主体不为空时,UniqueBody为空,exchange-server,exchangewebservices,Exchange Server,Exchangewebservices,我从以前的开发人员那里继承了一个项目的责任,该开发人员将收到的电子邮件处理成客户支持单 它基本上工作正常,但它有一个特定的电子邮件问题,我不知道为什么。 在Outlook中,电子邮件显然有正文(一些短文本、图像和签名)。这是一条新消息,不是回复。 exchange server版本为2013 但是当被下面的代码处理时,UniqueBody为空,而Body包含正确的文本。我在该服务器上遇到的任何其他电子邮件都不会出现这种情况 if (serverVersion >= ExchangeVers
UniqueBody
为空,而Body
包含正确的文本。我在该服务器上遇到的任何其他电子邮件都不会出现这种情况
if (serverVersion >= ExchangeVersion.Exchange2010)
body = msg.UniqueBody.Text;
else
body = msg.Body.Text;
什么会导致UniqueBody为空而Body为空
为什么以前的开发人员更喜欢使用UniqueBody而不是Body,它们有什么不同
可能相关检查您是否正确请求属性:
PropertySet ps = new PropertySet(ItemSchema.UniqueBody);
var email = EmailMessage.Bind(service, item.ItemId, ps);
如果这样做,UniqueBody
-属性不应为空
据我所知,UniqueBody
应该由exchange服务器设置,以显示邮件的哪一部分与您的票证相关:
如果您的客户稍后回答票证对话,则您只需要新文本。
使用新邮件/票据:body==uniqueBody==“您要使用的文本”