无法在Exchange Server 2013中通过EWS加载MimeContent

时间:2016-04-18 09:53:37

标签: c# exchange-server exchangewebservices ews-managed-api exchange-server-2013

我在使用EWS和Exchange Server 2013加载MimeContent属性时遇到问题。这就是我的工作:

var propertySet = new PropertySet{
            ItemSchema.Subject,
            ItemSchema.TextBody,
            ItemSchema.DateTimeCreated,
            ItemSchema.LastModifiedTime
        };

var item = Item.Bind(mailbox.ExchangeServiceInstance, itemId, propertySet);

邮箱,权限,PullSubscription& ExchangeService已设置并正常运行," itemId'是正确的,现有的。此代码有效,我可以访问已加载的属性。

但是当我尝试在它之后加载MimeContent时,我收到一个错误:

var binaries = new PropertySet(BasePropertySet.IdOnly, ItemSchema.MimeContent);
item.Load(binaries);

我得到的例外是:

  

' Microsoft.Exchange.WebServices.Data.ServiceResponseException'   发生在Microsoft.Exchange.WebServices.dll

     

缺少参考期。

我无法谷歌 - 发现与EWS相关的任何类似问题,或者加载MimeContent的任何类似问题。我一直想弄明白自己,但有人能给我一个暗示在哪里挖掘?

1 个答案:

答案 0 :(得分:4)

发现它!问题出在TimeZone设置中。他们说这是一个罕见的问题,这取决于您的Exchange Server的安装位置和方式。

我只在ExchangeService的构造函数中添加了TimeZoneInfo.Utc,现在一切正常。

var service = new ExchangeService(ExchangeVersion.Exchange2013_SP1, TimeZoneInfo.Utc)

希望它可以帮助别人。