Skip to main content
 首页 » 编程设计

c#之如何更新 Exchange Web Api 中的联系人项目

2024年02月23日639grandyang

我尝试用空字符串更新 EWS 中的联系人属性,但失败了。我不知道为什么。

 // works fine 
 contact.Company = "SomeCompany"; 
 contact.Update(ConflictResolutionMode.AlwaysOverwrite); 
 
 // failed in Update with a service response exception 
 contact.Company = ""; 
 contact.Update(ConflictResolutionMode.AlwaysOverwrite); 

我尝试了 null 和 string.Empty,但效果相同。 我究竟做错了什么?

请您参考如下方法:

您确定Contact 上有Company 属性吗?类型?我只看到 CompanyName可以通过以下方式更新的属性没有任何问题(至少在我尝试时):

var service = GetService(); 
var view = new ItemView(1); 
var searchFilter = new SearchFilter.IsEqualTo(ContactSchema.EmailAddress1, "test@domain.dk"); 
var contacts = service.FindItems(WellKnownFolderName.Contacts, searchFilter, view); 
 
var contact = contacts.ElementAt(0) as Contact; 
 
// Works fine. 
contact.CompanyName = "SomeCompany"; 
contact.Update(ConflictResolutionMode.AlwaysOverwrite); 
 
// Works fine as well. 
contact.CompanyName = ""; 
contact.Update(ConflictResolutionMode.AlwaysOverwrite);