1

我正在使用 EWS 托管 API 来阅读和发送电子邮件。但是,当我尝试在特定的 EmailMessage 上设置 IsRead 属性时,在 Update 方法上出现以下异常:

预期的 XML 节点类型是 Element,但实际类型是 EndElement。

这是我用来更新 IsRead 属性的方法:

public void UpdateExchangeEmail(string _ID, bool _isRead)
{
  EmailMessage message = EmailMessage.Bind(ExchService, _ID);
  message.IsRead = _isRead;
  message.Update(ConflictResolutionMode.NeverOverwrite);
}

其中 ExchService 是 ExchangeService 对象,适用于阅读和发送电子邮件。真正奇怪的是 IsRead 的值设置正确,因此尽管抛出了异常,它似乎仍然有效。

非常感谢任何有关如何修复它的输入。

4

1 回答 1

1

我相信您必须先调用 .Load() 方法才能访问此类属性

public void UpdateExchangeEmail(string _ID, bool _isRead)
{
  EmailMessage message = EmailMessage.Bind(ExchService, _ID);
  message.Load(new PropertySet(BasePropertySet.IdOnly, EmailMessageSchema.IsRead)); // Do this first.
  message.IsRead = _isRead;
  message.Update(ConflictResolutionMode.NeverOverwrite);
}
于 2014-07-12T22:46:30.693 回答