Exchange server 当主体不为空时,UniqueBody为空

Exchange server 当主体不为空时,UniqueBody为空,exchange-server,exchangewebservices,Exchange Server,Exchangewebservices,我从以前的开发人员那里继承了一个项目的责任,该开发人员将收到的电子邮件处理成客户支持单 它基本上工作正常,但它有一个特定的电子邮件问题,我不知道为什么。 在Outlook中,电子邮件显然有正文(一些短文本、图像和签名)。这是一条新消息,不是回复。 exchange server版本为2013 但是当被下面的代码处理时,UniqueBody为空,而Body包含正确的文本。我在该服务器上遇到的任何其他电子邮件都不会出现这种情况 if (serverVersion >= ExchangeVers

我从以前的开发人员那里继承了一个项目的责任,该开发人员将收到的电子邮件处理成客户支持单

它基本上工作正常,但它有一个特定的电子邮件问题,我不知道为什么。 在Outlook中,电子邮件显然有正文(一些短文本、图像和签名)。这是一条新消息,不是回复。 exchange server版本为2013

但是当被下面的代码处理时,
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==“您要使用的文本”