2010-08-15 6 views
1

Je souhaite récupérer un contact spécifique et mettre à jour son appartenance à un groupe. Je connais déjà le lien auto du contact. Pour obtenir le contact spécifique, le guide du développeur dit de le faire:comment mettre à jour l'appartenance à un groupe d'un seul contact avec Google Contact API et .NET?

// L'exemple suppose que l'objet ContactRequest (cr) est déjà configuré.

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

mais quand je compile, je reçois une erreur:

Argument 1: ne convertit pas 'string' à 'Google.Contacts.Contact'

Si je change à:

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

il compile et semble récupérer bien, mais je suis incapable de mettre à jour l'appartenance à un groupe de contact:

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

comme cr.Update (c) la ligne lance une GDataRequestException (400 Bad Request) avec une chaîne de réponse:

"informations sur les membres du groupe non pris en charge"

Qu'est-ce que je fais mal?

Répondre

2

je me suis dit ce que je faisais mal ...

Lors de la récupération du contact, j'utilisait la propriété « Id », au lieu de la propriété « Soi ».

La propriété "Id" a une projection "base", tandis que la propriété "Self" a une projection "Full".

Une fois que je suis passé à l'utilisation de "Self", cela a fonctionné correctement.