繁体   English   中英

在某些属性上更新EmailMessage时发生Exchange EWS托管API错误

[英]Exchange EWS Managed API Error while Updating EmailMessage on certain properties

我正在使用Exchange 2010 EWS托管API进行工作,并尝试更新电子邮件( EmailMessage )。

在更新EmailMessage's Sender.Name属性时,我在Update()遇到异常,但是如果我尝试更新EmailMessage's Subject ,它就可以正常工作。

private void UpdateEmail(ItemId itemId)
{
    try
    {
        EmailMessage emailMessage = EmailMessage.Bind(service, itemId, new PropertySet(EmailMessageSchema.Sender, EmailMessageSchema.Subject));

        // Test 1 - this works:
        emailMessage.Subject = "Testing";
        emailMessage.Update(ConflictResolutionMode.AlwaysOverwrite);  

        // Test 2 - this does NOT work (if I comment out the previous 2 lines btw):
        emailMessage.Sender.Name = "John Smith";
        emailMessage.Update(ConflictResolutionMode.AlwaysOverwrite);  // exception thrown
        ...

我从测试2中收到以下错误:

The request failed schema validation: The element 'Updates' in namespace 'http:/
/schemas.microsoft.com/exchange/services/2006/types' has incomplete content. Lis
t of possible elements expected: 'AppendToItemField, SetItemField, DeleteItemFie
ld' in namespace 'http://schemas.microsoft.com/exchange/services/2006/types'.

EWS不支持像您尝试的那样通过“强类型”属性来更改发件人地址。 他们可能成功的唯一方法是修改基础扩展属性并在适用的情况下生成oneoff或包装的entry-id,而需要更新的道具是

PR_SENDER_ADDRTYPE_W

PR_SENDER_EMAIL_ADDRESS_W

PR_SENDER_NAME_W

PR_SENDER_ENTRYID

PR_SENDER_SEARCH_KEY

PR_SENT_REPRESENTING_EMAIL_ADDRESS_W

PR_SENT_REPRESENTING_ADDRTYPE_W

PR_SENT_REPRESENTING_NAME_W

PR_SENT_REPRESENTING_ENTRYID

PR_SENT_REPRESENTING_SEARCH_KEY

请注意,也许还有其他一些人,您需要使用MAPI编辑器(如MFCMapi的OutlookSpy)亲自查看项目。

干杯格伦

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM