【问题标题】:You must load or assign this property before you can read its value in case of getMimeContent() method在 getMimeContent() 方法的情况下,您必须先加载或分配此属性,然后才能读取其值
【发布时间】:2019-08-05 08:21:30
【问题描述】:

我尝试了以下情况,但得到了同样的错误。 microsoft.exchange.webservices.data.core.exception.service.local.ServiceObjectPropertyException:您必须先加载或分配此属性,然后才能读取其值。

ExchangeService 服务 = 新的 ExchangeService();

案例1:
Item itm2 = Item.bind(service, new ItemId(itemId), PropertySet.FirstClassProperties); EmailMessage emailMessage2 = EmailMessage.bind(service, itm1.getId()); itm2.getMimeContent();

案例2:

Item itm2 = Item.bind(service, new ItemId(itemId), PropertySet.getFirstClassProperties());
EmailMessage emailMessage2 = EmailMessage.bind(service, itm1.getId()); itm2.getMimeContent();

但是一次又一次地得到同样的错误。我想要我的内容,可以更改为 .eml 格式。

【问题讨论】:

    标签: outlook office365 exchangewebservices outlook-addin office-addins


    【解决方案1】:

    您需要先加载该属性,然后才能访问它。

    创建一个PropertySet 并将MIMEContent 添加为属性:

    PropertySet propSet = new PropertySet(BasePropertySet.FirstClassProperties);
    propSet.Add(ItemSchema.MimeContent);
    

    然后将PropertySet 添加为Bind 代码的重载属性:

    EmailMessage emailMessage = EmailMessage.bind(service, itemId, propSet);
    String content = emailMessage.getMimeContent().toString();
    

    【讨论】:

    • 非常感谢它为我正常工作,并且整体代码已写在答案中。
    猜你喜欢
    • 2019-10-24
    • 2015-11-25
    • 2011-03-19
    • 2019-04-02
    • 2016-12-05
    • 2018-02-20
    • 2012-04-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多