我正在使用EWS托管API来阅读和发送电子邮件。但是,当我尝试在特定的EmailMessage上设置IsRead属性时,我在Update方法上得到以下异常:
预期的XML节点类型是Element,但实际类型是 结束元素。
以下是我用来更新IsRead属性的方法:
public void UpdateExchangeEmail(string _ID, bool _isRead)
{
EmailMessage message = EmailMessage.Bind(ExchService, _ID);
message.IsRead = _isRead;
message.Update(ConflictResolutionMode.NeverOverwrite);
}
其中ExchService是ExchangeService对象,可以正常读取和发送电子邮件。真正奇怪的是,IsRead的值设置正确,所以尽管抛出了异常,它似乎也能正常工作。
非常感谢有关如何修复它的任何输入。
答案 0 :(得分: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);
}