1

我想检索特定联系人,并更新其组成员身份。我已经知道联系人的自我链接。要获得特定的联系方式,开发人员指南说要这样做:

//该示例假定 ContactRequest 对象 (cr) 已设置。

Contact c = cr.Retrieve<Contact>("http://www.google.com/m8/feeds/contacts/liz%40gmail.com/full/12345");

但是当我编译这个时,我得到一个错误:

参数 1:无法从“字符串”转换为“Google.Contacts.Contact”

如果我将其更改为:

Contact c = cr.Retrieve<Contact>(new Uri("http://www.google.com/m8/feeds/contacts/liz%40gmail.com/full/12345"));

然后它编译,似乎可以检索,但我无法更新联系人的组成员身份:

c.GroupMembership.Add(member2);
cr.Update(c);

因为 cr.Update(c) 行抛出 GDataRequestException (400 Bad Request) 响应字符串为:

“不支持群组成员信息”

我究竟做错了什么?

4

1 回答 1

2

我发现我做错了什么...

检索联系人时,我使用的是“Id”属性,而不是“Self”属性。

“Id”属性具有“base”投影,而“Self”属性具有“Full”投影。

一旦我切换到使用“Self”,它就可以正常工作。

于 2010-08-15T16:12:24.947 回答