如何使用 Microsoft.Graph 更新联系人?

Quố*_*Đạt 2 microsoft-graph-sdks microsoft-graph-api

我正在使用 Microsoft Graph 更改联系人的电话。

var defaultContact = await graphClient.Me.Contacts.Request().GetAsync();

mylist.AddRange(defaultContact);

while (defaultContact.NextPageRequest != null)
{
    defaultContact = await defaultContact.NextPageRequest.GetAsync();
    mylist.AddRange(defaultContact);
}
Run Code Online (Sandbox Code Playgroud)

我有一个联系人列表:mylist

我使用此代码添加新联系人:

await graphClient.Me.Contacts.Request().AddAsync(newcontact);
Run Code Online (Sandbox Code Playgroud)

但我找不到如何使用 Microsoft.Graph 更新或编辑联系人

Kar*_*rdt 5

当您想要编辑/更新联系人时,可以使用以下操作:

PATCH /me/contacts/{id}
PATCH /me/contactFolders/{id}/contacts/{id}
Run Code Online (Sandbox Code Playgroud)

或者

PATCH /users/{id | userPrincipalName}/contacts/{id}
PATCH /users/{id | userPrincipalName}/contactFolders/{id}/contacts/{id}
Run Code Online (Sandbox Code Playgroud)

文档中还描述了更多一些操作(但基本相同)

在 C#-SDK 中,这可能如下所示:

/* ... do your changes to the contact*/;

// PATCH /users/{id | userPrincipalName}/contactFolders/{id}/contacts/{id}
var request = await graphClient.Users["userId"].ContactFolders["contactFolderId"].Contacts[myChangedContact.Id].Request().UpdateAsync(myChangedContact);
Run Code Online (Sandbox Code Playgroud)

或者

// PATCH /me/contacts/{id}
var request2 = await graphClient.Me.Contacts[myChangedContact.Id].Request().UpdateAsync(myChangedContact);
Run Code Online (Sandbox Code Playgroud)