更新 listItem
命名空间:microsoft.graph
更新 listItem 上的属性。
权限
要调用此 API,需要以下权限之一。要了解详细信息,包括如何选择权限的信息,请参阅权限。
| 权限类型 |
权限(从最低特权到最高特权) |
| 委派(工作或学校帐户) |
Sites.ReadWrite.All |
| 委派(个人 Microsoft 帐户) |
不支持。 |
| 应用程序 |
Sites.ReadWrite.All |
HTTP 请求
更新 listItem 上的属性。
PATCH https://graph.microsoft.com/v1.0/sites/{site-id}/lists/{list-id}/items/{item-id}
更新 listItem 上的列值。
PATCH https://graph.microsoft.com/v1.0/sites/{site-id}/lists/{list-id}/items/{item-id}/fields
| 名称 |
值 |
说明 |
| if-match |
etag |
如果包含此请求标头,且提供的 eTag 与项中的当前 eTag 不匹配,则返回 412 Precondition Failed 响应,并且不会更新该项。 |
请求正文
在请求正文中,提供指定要更新的字段的 fieldValueSet 的 JSON 表示形式。
响应
如果成功,此方法在已更新列表项的响应正文中返回200 Ok响应代码和 fieldValueSet。
示例
下面是一个示例,使用新值更新列表项的 颜色 和 数量 字段。 listItem 上的所有其他值都保持独立。
请求
PATCH https://graph.microsoft.com/v1.0/sites/{site-id}/lists/{list-id}/items/{item-id}/fields
Content-Type: application/json
{
"Color": "Fuchsia",
"Quantity": 934
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var fieldValueSet = new FieldValueSet
{
AdditionalData = new Dictionary<string, object>()
{
{"Color", "Fuchsia"},
{"Quantity", "934"}
}
};
await graphClient.Sites["{site-id}"].Lists["{list-id}"].Items["{listItem-id}"].Fields
.Request()
.UpdateAsync(fieldValueSet);
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
const options = {
authProvider,
};
const client = Client.init(options);
const fieldValueSet = {
Color: 'Fuchsia',
Quantity: 934
};
await client.api('/sites/{site-id}/lists/{list-id}/items/{item-id}/fields')
.update(fieldValueSet);
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/v1.0/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/sites/{site-id}/lists/{list-id}/items/{item-id}/fields"]]];
[urlRequest setHTTPMethod:@"PATCH"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphFieldValueSet *fieldValueSet = [[MSGraphFieldValueSet alloc] init];
[fieldValueSet setColor:@"Fuchsia"];
[fieldValueSet setQuantity: 934];
NSError *error;
NSData *fieldValueSetData = [fieldValueSet getSerializedDataWithError:&error];
[urlRequest setHTTPBody:fieldValueSetData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
IGraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
FieldValueSet fieldValueSet = new FieldValueSet();
fieldValueSet.Color = "Fuchsia";
fieldValueSet.Quantity = 934;
graphClient.sites("{site-id}").lists("{list-id}").items("{item-id}").fields()
.buildRequest()
.patch(fieldValueSet);
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewFieldValueSet()
requestBody.SetAdditionalData(map[string]interface{}{
"Color": "Fuchsia",
"Quantity": ,
}
siteId := "site-id"
listId := "list-id"
listItemId := "listItem-id"
graphClient.SitesById(&siteId).ListsById(&listId).ItemsById(&listItemId).Fields().Patch(requestBody)
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
Import-Module Microsoft.Graph.Sites
$params = @{
Color = "Fuchsia"
Quantity =
}
Update-MgSiteListItemField -SiteId $siteId -ListId $listId -ListItemId $listItemId -BodyParameter $params
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
响应
HTTP/1.1 200 Ok
Content-type: application/json
{
"Name": "Widget",
"Color": "Fuchsia",
"Quantity": 934
}