[英]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.