创建新列表
本文内容
命名空间:microsoft.graph
在 site 中的创建新的 list 。
权限
要调用此 API,需要以下权限之一。要了解详细信息,包括如何选择权限的信息,请参阅权限 。
权限类型
权限(从最低特权到最高特权)
委派(工作或学校帐户)
Sites.Manage.All
委派(个人 Microsoft 帐户)
不支持。
应用程序
Sites.Manage.All
HTTP 请求
POST https://graph.microsoft.com/v1.0/sites/{site-id}/lists
名称
说明
Authorization
Bearer {token}。必需。
Content-Type
application/json. Required.
请求正文
在请求正文中,提供 [列表][] 对象的 JSON 表示形式。
响应
如果成功,此方法在响应正文中返回 201 Created 响应代码和 [列表][] 对象。
示例
请求
下面是有关如何创建新的泛型列表的示例。
注意: 自定义列都是可选的。
除了此处指定的任何列,还使用引用的 模板 中定义的列创建新列表。
如果未指定 list facet 或 模板 ,则列表默认为 genericList 模板,其中包括“标题”列。
POST /sites/{site-id}/lists
Content-Type: application/json
{
"displayName": "Books",
"columns": [
{
"name": "Author",
"text": { }
},
{
"name": "PageCount",
"number": { }
}
],
"list": {
"template": "genericList"
}
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var list = new List
{
DisplayName = "Books",
Columns = new ListColumnsCollectionPage()
{
new ColumnDefinition
{
Name = "Author",
Text = new TextColumn
{
}
},
new ColumnDefinition
{
Name = "PageCount",
Number = new NumberColumn
{
}
}
},
ListInfo = new ListInfo
{
Template = "genericList"
}
};
await graphClient.Sites["{site-id}"].Lists
.Request()
.AddAsync(list);
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档 。
const options = {
authProvider,
};
const client = Client.init(options);
const list = {
displayName: 'Books',
columns: [
{
name: 'Author',
text: { }
},
{
name: 'PageCount',
number: { }
}
],
list: {
template: 'genericList'
}
};
await client.api('/sites/{site-id}/lists')
.post(list);
有关如何将 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"]]];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphList *list = [[MSGraphList alloc] init];
[list setDisplayName:@"Books"];
NSMutableArray *columnsList = [[NSMutableArray alloc] init];
MSGraphColumnDefinition *columns = [[MSGraphColumnDefinition alloc] init];
[columns setName:@"Author"];
MSGraphTextColumn *text = [[MSGraphTextColumn alloc] init];
[columns setText:text];
[columnsList addObject: columns];
MSGraphColumnDefinition *columns = [[MSGraphColumnDefinition alloc] init];
[columns setName:@"PageCount"];
MSGraphNumberColumn *number = [[MSGraphNumberColumn alloc] init];
[columns setNumber:number];
[columnsList addObject: columns];
[list setColumns:columnsList];
MSGraphListInfo *list = [[MSGraphListInfo alloc] init];
[list setTemplate:@"genericList"];
[list setList:list];
NSError *error;
NSData *listData = [list getSerializedDataWithError:&error];
[urlRequest setHTTPBody:listData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档 。
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
List list = new List();
list.displayName = "Books";
LinkedList<ColumnDefinition> columnsList = new LinkedList<ColumnDefinition>();
ColumnDefinition columns = new ColumnDefinition();
columns.name = "Author";
TextColumn text = new TextColumn();
columns.text = text;
columnsList.add(columns);
ColumnDefinition columns1 = new ColumnDefinition();
columns1.name = "PageCount";
NumberColumn number = new NumberColumn();
columns1.number = number;
columnsList.add(columns1);
ColumnDefinitionCollectionResponse columnDefinitionCollectionResponse = new ColumnDefinitionCollectionResponse();
columnDefinitionCollectionResponse.value = columnsList;
ColumnDefinitionCollectionPage columnDefinitionCollectionPage = new ColumnDefinitionCollectionPage(columnDefinitionCollectionResponse, null);
list.columns = columnDefinitionCollectionPage;
ListInfo list = new ListInfo();
list.template = "genericList";
list.list = list;
graphClient.sites("{site-id}").lists()
.buildRequest()
.post(list);
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档 。
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewList()
displayName := "Books"
requestBody.SetDisplayName(&displayName)
requestBody.SetColumns( []ColumnDefinition {
msgraphsdk.NewColumnDefinition(),
name := "Author"
SetName(&name)
text := msgraphsdk.NewTextColumn()
SetText(text)
msgraphsdk.NewColumnDefinition(),
name := "PageCount"
SetName(&name)
number := msgraphsdk.NewNumberColumn()
SetNumber(number)
}
list := msgraphsdk.NewListInfo()
requestBody.SetList(list)
template := "genericList"
list.SetTemplate(&template)
siteId := "site-id"
result, err := graphClient.SitesById(&siteId).Lists().Post(requestBody)
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档 。
Import-Module Microsoft.Graph.Sites
$params = @{
DisplayName = "Books"
Columns = @(
@{
Name = "Author"
Text = @{
}
}
@{
Name = "PageCount"
Number = @{
}
}
)
List = @{
Template = "genericList"
}
}
New-MgSiteList -SiteId $siteId -BodyParameter $params
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档 。
响应
下面展示了示例响应。
注意: 为清楚起见,将截断 Response 对象。 实际调用会返回默认属性。
HTTP/1.1 201 Created
Content-type: application/json
{
"id": "22e03ef3-6ef4-424d-a1d3-92a337807c30",
"createdDateTime": "2017-04-30T01:21:00Z",
"createdBy": {
"user": {
"displayName": "Ryan Gregg",
"id": "8606e4d5-d582-4f5f-aeba-7d7c18b20cfd"
}
},
"lastModifiedDateTime": "2016-08-30T08:26:00Z",
"lastModifiedBy": {
"user": {
"displayName": "Ryan Gregg",
"id": "8606e4d5-d582-4f5f-aeba-7d7c18b20cfd"
}
}
}