创建 educationRubric
命名空间:microsoft.graph
创建新的 educationRubric 对象。
权限
要调用此 API,需要以下权限之一。要了解详细信息,包括如何选择权限的信息,请参阅权限。
| 权限类型 |
权限(从最低特权到最高特权) |
| 委派(工作或学校帐户) |
EduAssignments.ReadWriteBasic、EduAssignments.ReadWrite |
| 委派(个人 Microsoft 帐户) |
不支持。 |
| 应用程序 |
不支持。 |
HTTP 请求
POST /education/me/rubrics
| 名称 |
说明 |
| Authorization |
持有者 {token} |
请求正文
在请求正文中,提供 educationRubric 对象的 JSON 表示形式。
响应
如果成功,此方法在响应 201 Created 正文中返回 响应代码和新 educationRubric 对象。
示例
示例 1:发布信用额度
请求
下面是一个请求发布信用额度, (一个没有分数的) 。
POST https://graph.microsoft.com/v1.0/education/me/rubrics
Content-type: application/json
{
"displayName":"Example Credit Rubric",
"description":{
"content":"This is an example of a credit rubric (no points)",
"contentType":"text"
},
"levels":[
{
"displayName":"Good",
"description":{
"content":"",
"contentType":"text"
}
},
{
"displayName":"Poor",
"description":{
"content":"",
"contentType":"text"
}
}
],
"qualities":[
{
"description":{
"content":"Argument",
"contentType":"text"
},
"criteria":[
{
"description":{
"content":"The essay's argument is persuasive.",
"contentType":"text"
}
},
{
"description":{
"content":"The essay's argument does not make sense.",
"contentType":"text"
}
}
]
},
{
"description":{
"content":"Spelling and Grammar",
"contentType":"text"
},
"criteria":[
{
"description":{
"content":"The essay uses proper spelling and grammar with few or no errors.",
"contentType":"text"
}
},
{
"description":{
"content":"The essay has numerous errors in spelling and/or grammar.",
"contentType":"text"
}
}
]
}
]
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var educationRubric = new EducationRubric
{
DisplayName = "Example Credit Rubric",
Description = new EducationItemBody
{
Content = "This is an example of a credit rubric (no points)",
ContentType = BodyType.Text
},
Levels = new List<RubricLevel>()
{
new RubricLevel
{
DisplayName = "Good",
Description = new EducationItemBody
{
Content = "",
ContentType = BodyType.Text
}
},
new RubricLevel
{
DisplayName = "Poor",
Description = new EducationItemBody
{
Content = "",
ContentType = BodyType.Text
}
}
},
Qualities = new List<RubricQuality>()
{
new RubricQuality
{
Description = new EducationItemBody
{
Content = "Argument",
ContentType = BodyType.Text
},
Criteria = new List<RubricCriterion>()
{
new RubricCriterion
{
Description = new EducationItemBody
{
Content = "The essay's argument is persuasive.",
ContentType = BodyType.Text
}
},
new RubricCriterion
{
Description = new EducationItemBody
{
Content = "The essay's argument does not make sense.",
ContentType = BodyType.Text
}
}
}
},
new RubricQuality
{
Description = new EducationItemBody
{
Content = "Spelling and Grammar",
ContentType = BodyType.Text
},
Criteria = new List<RubricCriterion>()
{
new RubricCriterion
{
Description = new EducationItemBody
{
Content = "The essay uses proper spelling and grammar with few or no errors.",
ContentType = BodyType.Text
}
},
new RubricCriterion
{
Description = new EducationItemBody
{
Content = "The essay has numerous errors in spelling and/or grammar.",
ContentType = BodyType.Text
}
}
}
}
}
};
await graphClient.Education.Me.Rubrics
.Request()
.AddAsync(educationRubric);
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
const options = {
authProvider,
};
const client = Client.init(options);
const educationRubric = {
displayName: 'Example Credit Rubric',
description: {
content: 'This is an example of a credit rubric (no points)',
contentType: 'text'
},
levels: [
{
displayName: 'Good',
description: {
content: '',
contentType: 'text'
}
},
{
displayName: 'Poor',
description: {
content: '',
contentType: 'text'
}
}
],
qualities: [
{
description: {
content: 'Argument',
contentType: 'text'
},
criteria: [
{
description: {
content: 'The essay\'s argument is persuasive.',
contentType: 'text'
}
},
{
description: {
content: 'The essay\'s argument does not make sense.',
contentType: 'text'
}
}
]
},
{
description: {
content: 'Spelling and Grammar',
contentType: 'text'
},
criteria: [
{
description: {
content: 'The essay uses proper spelling and grammar with few or no errors.',
contentType: 'text'
}
},
{
description: {
content: 'The essay has numerous errors in spelling and/or grammar.',
contentType: 'text'
}
}
]
}
]
};
await client.api('/education/me/rubrics')
.post(educationRubric);
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/v1.0/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/education/me/rubrics"]]];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphEducationRubric *educationRubric = [[MSGraphEducationRubric alloc] init];
[educationRubric setDisplayName:@"Example Credit Rubric"];
MSGraphEducationItemBody *description = [[MSGraphEducationItemBody alloc] init];
[description setContent:@"This is an example of a credit rubric (no points)"];
[description setContentType: [MSGraphBodyType text]];
[educationRubric setDescription:description];
NSMutableArray *levelsList = [[NSMutableArray alloc] init];
MSGraphRubricLevel *levels = [[MSGraphRubricLevel alloc] init];
[levels setDisplayName:@"Good"];
MSGraphEducationItemBody *description = [[MSGraphEducationItemBody alloc] init];
[description setContent:@""];
[description setContentType: [MSGraphBodyType text]];
[levels setDescription:description];
[levelsList addObject: levels];
MSGraphRubricLevel *levels = [[MSGraphRubricLevel alloc] init];
[levels setDisplayName:@"Poor"];
MSGraphEducationItemBody *description = [[MSGraphEducationItemBody alloc] init];
[description setContent:@""];
[description setContentType: [MSGraphBodyType text]];
[levels setDescription:description];
[levelsList addObject: levels];
[educationRubric setLevels:levelsList];
NSMutableArray *qualitiesList = [[NSMutableArray alloc] init];
MSGraphRubricQuality *qualities = [[MSGraphRubricQuality alloc] init];
MSGraphEducationItemBody *description = [[MSGraphEducationItemBody alloc] init];
[description setContent:@"Argument"];
[description setContentType: [MSGraphBodyType text]];
[qualities setDescription:description];
NSMutableArray *criteriaList = [[NSMutableArray alloc] init];
MSGraphRubricCriterion *criteria = [[MSGraphRubricCriterion alloc] init];
MSGraphEducationItemBody *description = [[MSGraphEducationItemBody alloc] init];
[description setContent:@"The essay's argument is persuasive."];
[description setContentType: [MSGraphBodyType text]];
[criteria setDescription:description];
[criteriaList addObject: criteria];
MSGraphRubricCriterion *criteria = [[MSGraphRubricCriterion alloc] init];
MSGraphEducationItemBody *description = [[MSGraphEducationItemBody alloc] init];
[description setContent:@"The essay's argument does not make sense."];
[description setContentType: [MSGraphBodyType text]];
[criteria setDescription:description];
[criteriaList addObject: criteria];
[qualities setCriteria:criteriaList];
[qualitiesList addObject: qualities];
MSGraphRubricQuality *qualities = [[MSGraphRubricQuality alloc] init];
MSGraphEducationItemBody *description = [[MSGraphEducationItemBody alloc] init];
[description setContent:@"Spelling and Grammar"];
[description setContentType: [MSGraphBodyType text]];
[qualities setDescription:description];
NSMutableArray *criteriaList = [[NSMutableArray alloc] init];
MSGraphRubricCriterion *criteria = [[MSGraphRubricCriterion alloc] init];
MSGraphEducationItemBody *description = [[MSGraphEducationItemBody alloc] init];
[description setContent:@"The essay uses proper spelling and grammar with few or no errors."];
[description setContentType: [MSGraphBodyType text]];
[criteria setDescription:description];
[criteriaList addObject: criteria];
MSGraphRubricCriterion *criteria = [[MSGraphRubricCriterion alloc] init];
MSGraphEducationItemBody *description = [[MSGraphEducationItemBody alloc] init];
[description setContent:@"The essay has numerous errors in spelling and/or grammar."];
[description setContentType: [MSGraphBodyType text]];
[criteria setDescription:description];
[criteriaList addObject: criteria];
[qualities setCriteria:criteriaList];
[qualitiesList addObject: qualities];
[educationRubric setQualities:qualitiesList];
NSError *error;
NSData *educationRubricData = [educationRubric getSerializedDataWithError:&error];
[urlRequest setHTTPBody:educationRubricData];
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();
EducationRubric educationRubric = new EducationRubric();
educationRubric.displayName = "Example Credit Rubric";
EducationItemBody description = new EducationItemBody();
description.content = "This is an example of a credit rubric (no points)";
description.contentType = BodyType.TEXT;
educationRubric.description = description;
LinkedList<RubricLevel> levelsList = new LinkedList<RubricLevel>();
RubricLevel levels = new RubricLevel();
levels.displayName = "Good";
EducationItemBody description1 = new EducationItemBody();
description1.content = "";
description1.contentType = BodyType.TEXT;
levels.description = description1;
levelsList.add(levels);
RubricLevel levels1 = new RubricLevel();
levels1.displayName = "Poor";
EducationItemBody description2 = new EducationItemBody();
description2.content = "";
description2.contentType = BodyType.TEXT;
levels1.description = description2;
levelsList.add(levels1);
educationRubric.levels = levelsList;
LinkedList<RubricQuality> qualitiesList = new LinkedList<RubricQuality>();
RubricQuality qualities = new RubricQuality();
EducationItemBody description3 = new EducationItemBody();
description3.content = "Argument";
description3.contentType = BodyType.TEXT;
qualities.description = description3;
LinkedList<RubricCriterion> criteriaList = new LinkedList<RubricCriterion>();
RubricCriterion criteria = new RubricCriterion();
EducationItemBody description4 = new EducationItemBody();
description4.content = "The essay's argument is persuasive.";
description4.contentType = BodyType.TEXT;
criteria.description = description4;
criteriaList.add(criteria);
RubricCriterion criteria1 = new RubricCriterion();
EducationItemBody description5 = new EducationItemBody();
description5.content = "The essay's argument does not make sense.";
description5.contentType = BodyType.TEXT;
criteria1.description = description5;
criteriaList.add(criteria1);
qualities.criteria = criteriaList;
qualitiesList.add(qualities);
RubricQuality qualities1 = new RubricQuality();
EducationItemBody description6 = new EducationItemBody();
description6.content = "Spelling and Grammar";
description6.contentType = BodyType.TEXT;
qualities1.description = description6;
LinkedList<RubricCriterion> criteriaList1 = new LinkedList<RubricCriterion>();
RubricCriterion criteria2 = new RubricCriterion();
EducationItemBody description7 = new EducationItemBody();
description7.content = "The essay uses proper spelling and grammar with few or no errors.";
description7.contentType = BodyType.TEXT;
criteria2.description = description7;
criteriaList1.add(criteria2);
RubricCriterion criteria3 = new RubricCriterion();
EducationItemBody description8 = new EducationItemBody();
description8.content = "The essay has numerous errors in spelling and/or grammar.";
description8.contentType = BodyType.TEXT;
criteria3.description = description8;
criteriaList1.add(criteria3);
qualities1.criteria = criteriaList1;
qualitiesList.add(qualities1);
educationRubric.qualities = qualitiesList;
graphClient.education().me().rubrics()
.buildRequest()
.post(educationRubric);
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewEducationRubric()
displayName := "Example Credit Rubric"
requestBody.SetDisplayName(&displayName)
description := msgraphsdk.NewEducationItemBody()
requestBody.SetDescription(description)
content := "This is an example of a credit rubric (no points)"
description.SetContent(&content)
contentType := "text"
description.SetContentType(&contentType)
requestBody.SetLevels( []RubricLevel {
msgraphsdk.NewRubricLevel(),
displayName := "Good"
SetDisplayName(&displayName)
description := msgraphsdk.NewEducationItemBody()
SetDescription(description)
content := ""
description.SetContent(&content)
contentType := "text"
description.SetContentType(&contentType)
msgraphsdk.NewRubricLevel(),
displayName := "Poor"
SetDisplayName(&displayName)
description := msgraphsdk.NewEducationItemBody()
SetDescription(description)
content := ""
description.SetContent(&content)
contentType := "text"
description.SetContentType(&contentType)
}
requestBody.SetQualities( []RubricQuality {
msgraphsdk.NewRubricQuality(),
description := msgraphsdk.NewEducationItemBody()
SetDescription(description)
content := "Argument"
description.SetContent(&content)
contentType := "text"
description.SetContentType(&contentType)
SetCriteria( []RubricCriterion {
msgraphsdk.NewRubricCriterion(),
description := msgraphsdk.NewEducationItemBody()
SetDescription(description)
content := "The essay's argument is persuasive."
description.SetContent(&content)
contentType := "text"
description.SetContentType(&contentType)
msgraphsdk.NewRubricCriterion(),
description := msgraphsdk.NewEducationItemBody()
SetDescription(description)
content := "The essay's argument does not make sense."
description.SetContent(&content)
contentType := "text"
description.SetContentType(&contentType)
}
msgraphsdk.NewRubricQuality(),
description := msgraphsdk.NewEducationItemBody()
SetDescription(description)
content := "Spelling and Grammar"
description.SetContent(&content)
contentType := "text"
description.SetContentType(&contentType)
SetCriteria( []RubricCriterion {
msgraphsdk.NewRubricCriterion(),
description := msgraphsdk.NewEducationItemBody()
SetDescription(description)
content := "The essay uses proper spelling and grammar with few or no errors."
description.SetContent(&content)
contentType := "text"
description.SetContentType(&contentType)
msgraphsdk.NewRubricCriterion(),
description := msgraphsdk.NewEducationItemBody()
SetDescription(description)
content := "The essay has numerous errors in spelling and/or grammar."
description.SetContent(&content)
contentType := "text"
description.SetContentType(&contentType)
}
}
result, err := graphClient.Education().Me().Rubrics().Post(requestBody)
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
Import-Module Microsoft.Graph.Education
$params = @{
DisplayName = "Example Credit Rubric"
Description = @{
Content = "This is an example of a credit rubric (no points)"
ContentType = "text"
}
Levels = @(
@{
DisplayName = "Good"
Description = @{
Content = ""
ContentType = "text"
}
}
@{
DisplayName = "Poor"
Description = @{
Content = ""
ContentType = "text"
}
}
)
Qualities = @(
@{
Description = @{
Content = "Argument"
ContentType = "text"
}
Criteria = @(
@{
Description = @{
Content = "The essay's argument is persuasive."
ContentType = "text"
}
}
@{
Description = @{
Content = "The essay's argument does not make sense."
ContentType = "text"
}
}
)
}
@{
Description = @{
Content = "Spelling and Grammar"
ContentType = "text"
}
Criteria = @(
@{
Description = @{
Content = "The essay uses proper spelling and grammar with few or no errors."
ContentType = "text"
}
}
@{
Description = @{
Content = "The essay has numerous errors in spelling and/or grammar."
ContentType = "text"
}
}
)
}
)
}
New-MgEducationMeRubric -BodyParameter $params
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
响应
下面展示了示例响应。
注意: 为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 201 Created
Content-type: application/json
{
"displayName": "Example Credit Rubric",
"id": "63618139-2e8d-4f56-a762-dd734736816f",
"description": {
"content": "This is an example of a credit rubric (no points)",
"contentType": "text"
},
"qualities": [
{
"qualityId": "461e866a-4844-4a3f-9a3c-e5464a32acf1",
"description": {
"content": "Argument",
"contentType": "text"
},
"criteria": [
{
"description": {
"content": "The essay's argument is persuasive.",
"contentType": "text"
}
},
{
"description": {
"content": "The essay's argument does not make sense.",
"contentType": "text"
}
}
]
},
{
"qualityId": "ccb47c1c-1a01-4027-93d7-f14b9fe86fdd",
"description": {
"content": "Spelling and Grammar",
"contentType": "text"
},
"criteria": [
{
"description": {
"content": "The essay uses proper spelling and grammar with few or no errors.",
"contentType": "text"
}
},
{
"description": {
"content": "The essay has numerous errors in spelling and/or grammar.",
"contentType": "text"
}
}
]
}
],
"levels": [
{
"levelId": "564e68f6-984b-4574-bea7-ffae3c92633f",
"displayName": "Good",
"description": {
"content": "",
"contentType": "text"
}
},
{
"levelId": "3f082e35-46e3-4944-baea-ea6c7e36ef37",
"displayName": "Poor",
"description": {
"content": "",
"contentType": "text"
}
}
]
}
示例 2:发布分数
下面是一个请求发布带分数的分数的分数的示例。
POST https://graph.microsoft.com/v1.0/education/me/rubrics
Content-type: application/json
{
"displayName":"Example Points Rubric",
"description":{
"content":"This is an example of a rubric with points",
"contentType":"text"
},
"levels":[
{
"displayName":"Good",
"description":{
"content":"",
"contentType":"text"
},
"grading":{
"@odata.type":"#microsoft.graph.educationAssignmentPointsGradeType",
"maxPoints":2
}
},
{
"displayName":"Poor",
"description":{
"content":"",
"contentType":"text"
},
"grading":{
"@odata.type":"#microsoft.graph.educationAssignmentPointsGradeType",
"maxPoints":1
}
}
],
"qualities":[
{
"description":{
"content":"Argument",
"contentType":"text"
},
"criteria":[
{
"description":{
"content":"The essay's argument is persuasive.",
"contentType":"text"
}
},
{
"description":{
"content":"The essay's argument does not make sense.",
"contentType":"text"
}
}
],
"weight":50.0
},
{
"description":{
"content":"Spelling and Grammar",
"contentType":"text"
},
"criteria":[
{
"description":{
"content":"The essay uses proper spelling and grammar with few or no errors.",
"contentType":"text"
}
},
{
"description":{
"content":"The essay has numerous errors in spelling and/or grammar.",
"contentType":"text"
}
}
],
"weight":50.0
}
],
"grading":{
"@odata.type":"#microsoft.graph.educationAssignmentPointsGradeType"
}
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var educationRubric = new EducationRubric
{
DisplayName = "Example Points Rubric",
Description = new EducationItemBody
{
Content = "This is an example of a rubric with points",
ContentType = BodyType.Text
},
Levels = new List<RubricLevel>()
{
new RubricLevel
{
DisplayName = "Good",
Description = new EducationItemBody
{
Content = "",
ContentType = BodyType.Text
},
Grading = new EducationAssignmentPointsGradeType
{
MaxPoints = 2f
}
},
new RubricLevel
{
DisplayName = "Poor",
Description = new EducationItemBody
{
Content = "",
ContentType = BodyType.Text
},
Grading = new EducationAssignmentPointsGradeType
{
MaxPoints = 1f
}
}
},
Qualities = new List<RubricQuality>()
{
new RubricQuality
{
Description = new EducationItemBody
{
Content = "Argument",
ContentType = BodyType.Text
},
Criteria = new List<RubricCriterion>()
{
new RubricCriterion
{
Description = new EducationItemBody
{
Content = "The essay's argument is persuasive.",
ContentType = BodyType.Text
}
},
new RubricCriterion
{
Description = new EducationItemBody
{
Content = "The essay's argument does not make sense.",
ContentType = BodyType.Text
}
}
},
Weight = 50f
},
new RubricQuality
{
Description = new EducationItemBody
{
Content = "Spelling and Grammar",
ContentType = BodyType.Text
},
Criteria = new List<RubricCriterion>()
{
new RubricCriterion
{
Description = new EducationItemBody
{
Content = "The essay uses proper spelling and grammar with few or no errors.",
ContentType = BodyType.Text
}
},
new RubricCriterion
{
Description = new EducationItemBody
{
Content = "The essay has numerous errors in spelling and/or grammar.",
ContentType = BodyType.Text
}
}
},
Weight = 50f
}
},
Grading = new EducationAssignmentPointsGradeType
{
}
};
await graphClient.Education.Me.Rubrics
.Request()
.AddAsync(educationRubric);
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
const options = {
authProvider,
};
const client = Client.init(options);
const educationRubric = {
displayName: 'Example Points Rubric',
description: {
content: 'This is an example of a rubric with points',
contentType: 'text'
},
levels: [
{
displayName: 'Good',
description: {
content: '',
contentType: 'text'
},
grading: {
'@odata.type':'#microsoft.graph.educationAssignmentPointsGradeType',
maxPoints: 2
}
},
{
displayName: 'Poor',
description: {
content: '',
contentType: 'text'
},
grading: {
'@odata.type':'#microsoft.graph.educationAssignmentPointsGradeType',
maxPoints: 1
}
}
],
qualities: [
{
description: {
content: 'Argument',
contentType: 'text'
},
criteria: [
{
description: {
content: 'The essay\'s argument is persuasive.',
contentType: 'text'
}
},
{
description: {
content: 'The essay\'s argument does not make sense.',
contentType: 'text'
}
}
],
weight: 50.0
},
{
description: {
content: 'Spelling and Grammar',
contentType: 'text'
},
criteria: [
{
description: {
content: 'The essay uses proper spelling and grammar with few or no errors.',
contentType: 'text'
}
},
{
description: {
content: 'The essay has numerous errors in spelling and/or grammar.',
contentType: 'text'
}
}
],
weight: 50.0
}
],
grading: {
'@odata.type':'#microsoft.graph.educationAssignmentPointsGradeType'
}
};
await client.api('/education/me/rubrics')
.post(educationRubric);
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/v1.0/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/education/me/rubrics"]]];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphEducationRubric *educationRubric = [[MSGraphEducationRubric alloc] init];
[educationRubric setDisplayName:@"Example Points Rubric"];
MSGraphEducationItemBody *description = [[MSGraphEducationItemBody alloc] init];
[description setContent:@"This is an example of a rubric with points"];
[description setContentType: [MSGraphBodyType text]];
[educationRubric setDescription:description];
NSMutableArray *levelsList = [[NSMutableArray alloc] init];
MSGraphRubricLevel *levels = [[MSGraphRubricLevel alloc] init];
[levels setDisplayName:@"Good"];
MSGraphEducationItemBody *description = [[MSGraphEducationItemBody alloc] init];
[description setContent:@""];
[description setContentType: [MSGraphBodyType text]];
[levels setDescription:description];
MSGraphEducationAssignmentGradeType *grading = [[MSGraphEducationAssignmentGradeType alloc] init];
[grading setMaxPoints: 2];
[levels setGrading:grading];
[levelsList addObject: levels];
MSGraphRubricLevel *levels = [[MSGraphRubricLevel alloc] init];
[levels setDisplayName:@"Poor"];
MSGraphEducationItemBody *description = [[MSGraphEducationItemBody alloc] init];
[description setContent:@""];
[description setContentType: [MSGraphBodyType text]];
[levels setDescription:description];
MSGraphEducationAssignmentGradeType *grading = [[MSGraphEducationAssignmentGradeType alloc] init];
[grading setMaxPoints: 1];
[levels setGrading:grading];
[levelsList addObject: levels];
[educationRubric setLevels:levelsList];
NSMutableArray *qualitiesList = [[NSMutableArray alloc] init];
MSGraphRubricQuality *qualities = [[MSGraphRubricQuality alloc] init];
MSGraphEducationItemBody *description = [[MSGraphEducationItemBody alloc] init];
[description setContent:@"Argument"];
[description setContentType: [MSGraphBodyType text]];
[qualities setDescription:description];
NSMutableArray *criteriaList = [[NSMutableArray alloc] init];
MSGraphRubricCriterion *criteria = [[MSGraphRubricCriterion alloc] init];
MSGraphEducationItemBody *description = [[MSGraphEducationItemBody alloc] init];
[description setContent:@"The essay's argument is persuasive."];
[description setContentType: [MSGraphBodyType text]];
[criteria setDescription:description];
[criteriaList addObject: criteria];
MSGraphRubricCriterion *criteria = [[MSGraphRubricCriterion alloc] init];
MSGraphEducationItemBody *description = [[MSGraphEducationItemBody alloc] init];
[description setContent:@"The essay's argument does not make sense."];
[description setContentType: [MSGraphBodyType text]];
[criteria setDescription:description];
[criteriaList addObject: criteria];
[qualities setCriteria:criteriaList];
[qualities setWeight: 50.0];
[qualitiesList addObject: qualities];
MSGraphRubricQuality *qualities = [[MSGraphRubricQuality alloc] init];
MSGraphEducationItemBody *description = [[MSGraphEducationItemBody alloc] init];
[description setContent:@"Spelling and Grammar"];
[description setContentType: [MSGraphBodyType text]];
[qualities setDescription:description];
NSMutableArray *criteriaList = [[NSMutableArray alloc] init];
MSGraphRubricCriterion *criteria = [[MSGraphRubricCriterion alloc] init];
MSGraphEducationItemBody *description = [[MSGraphEducationItemBody alloc] init];
[description setContent:@"The essay uses proper spelling and grammar with few or no errors."];
[description setContentType: [MSGraphBodyType text]];
[criteria setDescription:description];
[criteriaList addObject: criteria];
MSGraphRubricCriterion *criteria = [[MSGraphRubricCriterion alloc] init];
MSGraphEducationItemBody *description = [[MSGraphEducationItemBody alloc] init];
[description setContent:@"The essay has numerous errors in spelling and/or grammar."];
[description setContentType: [MSGraphBodyType text]];
[criteria setDescription:description];
[criteriaList addObject: criteria];
[qualities setCriteria:criteriaList];
[qualities setWeight: 50.0];
[qualitiesList addObject: qualities];
[educationRubric setQualities:qualitiesList];
MSGraphEducationAssignmentGradeType *grading = [[MSGraphEducationAssignmentGradeType alloc] init];
[educationRubric setGrading:grading];
NSError *error;
NSData *educationRubricData = [educationRubric getSerializedDataWithError:&error];
[urlRequest setHTTPBody:educationRubricData];
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();
EducationRubric educationRubric = new EducationRubric();
educationRubric.displayName = "Example Points Rubric";
EducationItemBody description = new EducationItemBody();
description.content = "This is an example of a rubric with points";
description.contentType = BodyType.TEXT;
educationRubric.description = description;
LinkedList<RubricLevel> levelsList = new LinkedList<RubricLevel>();
RubricLevel levels = new RubricLevel();
levels.displayName = "Good";
EducationItemBody description1 = new EducationItemBody();
description1.content = "";
description1.contentType = BodyType.TEXT;
levels.description = description1;
EducationAssignmentPointsGradeType grading = new EducationAssignmentPointsGradeType();
grading.maxPoints = 2;
levels.grading = grading;
levelsList.add(levels);
RubricLevel levels1 = new RubricLevel();
levels1.displayName = "Poor";
EducationItemBody description2 = new EducationItemBody();
description2.content = "";
description2.contentType = BodyType.TEXT;
levels1.description = description2;
EducationAssignmentPointsGradeType grading1 = new EducationAssignmentPointsGradeType();
grading1.maxPoints = 1;
levels1.grading = grading1;
levelsList.add(levels1);
educationRubric.levels = levelsList;
LinkedList<RubricQuality> qualitiesList = new LinkedList<RubricQuality>();
RubricQuality qualities = new RubricQuality();
EducationItemBody description3 = new EducationItemBody();
description3.content = "Argument";
description3.contentType = BodyType.TEXT;
qualities.description = description3;
LinkedList<RubricCriterion> criteriaList = new LinkedList<RubricCriterion>();
RubricCriterion criteria = new RubricCriterion();
EducationItemBody description4 = new EducationItemBody();
description4.content = "The essay's argument is persuasive.";
description4.contentType = BodyType.TEXT;
criteria.description = description4;
criteriaList.add(criteria);
RubricCriterion criteria1 = new RubricCriterion();
EducationItemBody description5 = new EducationItemBody();
description5.content = "The essay's argument does not make sense.";
description5.contentType = BodyType.TEXT;
criteria1.description = description5;
criteriaList.add(criteria1);
qualities.criteria = criteriaList;
qualities.weight = 50.0;
qualitiesList.add(qualities);
RubricQuality qualities1 = new RubricQuality();
EducationItemBody description6 = new EducationItemBody();
description6.content = "Spelling and Grammar";
description6.contentType = BodyType.TEXT;
qualities1.description = description6;
LinkedList<RubricCriterion> criteriaList1 = new LinkedList<RubricCriterion>();
RubricCriterion criteria2 = new RubricCriterion();
EducationItemBody description7 = new EducationItemBody();
description7.content = "The essay uses proper spelling and grammar with few or no errors.";
description7.contentType = BodyType.TEXT;
criteria2.description = description7;
criteriaList1.add(criteria2);
RubricCriterion criteria3 = new RubricCriterion();
EducationItemBody description8 = new EducationItemBody();
description8.content = "The essay has numerous errors in spelling and/or grammar.";
description8.contentType = BodyType.TEXT;
criteria3.description = description8;
criteriaList1.add(criteria3);
qualities1.criteria = criteriaList1;
qualities1.weight = 50.0;
qualitiesList.add(qualities1);
educationRubric.qualities = qualitiesList;
EducationAssignmentPointsGradeType grading2 = new EducationAssignmentPointsGradeType();
educationRubric.grading = grading2;
graphClient.education().me().rubrics()
.buildRequest()
.post(educationRubric);
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewEducationRubric()
displayName := "Example Points Rubric"
requestBody.SetDisplayName(&displayName)
description := msgraphsdk.NewEducationItemBody()
requestBody.SetDescription(description)
content := "This is an example of a rubric with points"
description.SetContent(&content)
contentType := "text"
description.SetContentType(&contentType)
requestBody.SetLevels( []RubricLevel {
msgraphsdk.NewRubricLevel(),
displayName := "Good"
SetDisplayName(&displayName)
description := msgraphsdk.NewEducationItemBody()
SetDescription(description)
content := ""
description.SetContent(&content)
contentType := "text"
description.SetContentType(&contentType)
grading := msgraphsdk.NewEducationAssignmentGradeType()
SetGrading(grading)
grading.SetAdditionalData(map[string]interface{}{
"@odata.type": "#microsoft.graph.educationAssignmentPointsGradeType",
"maxPoints": ,
}
msgraphsdk.NewRubricLevel(),
displayName := "Poor"
SetDisplayName(&displayName)
description := msgraphsdk.NewEducationItemBody()
SetDescription(description)
content := ""
description.SetContent(&content)
contentType := "text"
description.SetContentType(&contentType)
grading := msgraphsdk.NewEducationAssignmentGradeType()
SetGrading(grading)
grading.SetAdditionalData(map[string]interface{}{
"@odata.type": "#microsoft.graph.educationAssignmentPointsGradeType",
"maxPoints": ,
}
}
requestBody.SetQualities( []RubricQuality {
msgraphsdk.NewRubricQuality(),
description := msgraphsdk.NewEducationItemBody()
SetDescription(description)
content := "Argument"
description.SetContent(&content)
contentType := "text"
description.SetContentType(&contentType)
SetCriteria( []RubricCriterion {
msgraphsdk.NewRubricCriterion(),
description := msgraphsdk.NewEducationItemBody()
SetDescription(description)
content := "The essay's argument is persuasive."
description.SetContent(&content)
contentType := "text"
description.SetContentType(&contentType)
msgraphsdk.NewRubricCriterion(),
description := msgraphsdk.NewEducationItemBody()
SetDescription(description)
content := "The essay's argument does not make sense."
description.SetContent(&content)
contentType := "text"
description.SetContentType(&contentType)
}
weight := float32(50.0)
SetWeight(&weight)
msgraphsdk.NewRubricQuality(),
description := msgraphsdk.NewEducationItemBody()
SetDescription(description)
content := "Spelling and Grammar"
description.SetContent(&content)
contentType := "text"
description.SetContentType(&contentType)
SetCriteria( []RubricCriterion {
msgraphsdk.NewRubricCriterion(),
description := msgraphsdk.NewEducationItemBody()
SetDescription(description)
content := "The essay uses proper spelling and grammar with few or no errors."
description.SetContent(&content)
contentType := "text"
description.SetContentType(&contentType)
msgraphsdk.NewRubricCriterion(),
description := msgraphsdk.NewEducationItemBody()
SetDescription(description)
content := "The essay has numerous errors in spelling and/or grammar."
description.SetContent(&content)
contentType := "text"
description.SetContentType(&contentType)
}
weight := float32(50.0)
SetWeight(&weight)
}
grading := msgraphsdk.NewEducationAssignmentGradeType()
requestBody.SetGrading(grading)
grading.SetAdditionalData(map[string]interface{}{
"@odata.type": "#microsoft.graph.educationAssignmentPointsGradeType",
}
result, err := graphClient.Education().Me().Rubrics().Post(requestBody)
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
Import-Module Microsoft.Graph.Education
$params = @{
DisplayName = "Example Points Rubric"
Description = @{
Content = "This is an example of a rubric with points"
ContentType = "text"
}
Levels = @(
@{
DisplayName = "Good"
Description = @{
Content = ""
ContentType = "text"
}
Grading = @{
"@odata.type" = "#microsoft.graph.educationAssignmentPointsGradeType"
MaxPoints =
}
}
@{
DisplayName = "Poor"
Description = @{
Content = ""
ContentType = "text"
}
Grading = @{
"@odata.type" = "#microsoft.graph.educationAssignmentPointsGradeType"
MaxPoints =
}
}
)
Qualities = @(
@{
Description = @{
Content = "Argument"
ContentType = "text"
}
Criteria = @(
@{
Description = @{
Content = "The essay's argument is persuasive."
ContentType = "text"
}
}
@{
Description = @{
Content = "The essay's argument does not make sense."
ContentType = "text"
}
}
)
Weight = 50.0
}
@{
Description = @{
Content = "Spelling and Grammar"
ContentType = "text"
}
Criteria = @(
@{
Description = @{
Content = "The essay uses proper spelling and grammar with few or no errors."
ContentType = "text"
}
}
@{
Description = @{
Content = "The essay has numerous errors in spelling and/or grammar."
ContentType = "text"
}
}
)
Weight = 50.0
}
)
Grading = @{
"@odata.type" = "#microsoft.graph.educationAssignmentPointsGradeType"
}
}
New-MgEducationMeRubric -BodyParameter $params
有关如何将 SDK 添加 到项目并 创建 authProvider 实例的 详细信息,请参阅 SDK 文档。
响应
下面展示了示例响应。
注意: 为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 201 Created
Content-type: application/json
{
"displayName": "Example Points Rubric",
"id": "bf040af7-a5ff-4abe-a8c8-1bdc532344c2",
"description": {
"content": "This is an example of a rubric with points",
"contentType": "text"
},
"levels": [
{
"levelId": "519cd134-c513-40b9-aa71-fdb0d063c084",
"displayName": "Good",
"description": {
"content": "",
"contentType": "text"
},
"grading": {
"@odata.type": "#microsoft.graph.educationAssignmentPointsGradeType",
"maxPoints": 2
}
},
{
"levelId": "db2a0c91-abef-44cb-b8b1-ef1f85ef4a77",
"displayName": "Poor",
"description": {
"content": "",
"contentType": "text"
},
"grading": {
"@odata.type": "#microsoft.graph.educationAssignmentPointsGradeType",
"maxPoints": 1
}
}
],
"qualities": [
{
"qualityId": "bbf3fb4a-a794-4b51-a1ad-c22fb891c5d8",
"weight": 50.0,
"description": {
"content": "Argument",
"contentType": "text"
},
"criteria": [
{
"id": "5e637d79-f26b-4ea6-acd7-73824f0c0967",
"description": {
"content": "The essay's argument is persuasive.",
"contentType": "text"
}
},
{
"id": "ebdcc27f-d1ec-4aa3-9da7-bd8d7842e3d3",
"description": {
"content": "The essay's argument does not make sense.",
"contentType": "text"
}
}
]
},
{
"qualityId": "ebe97fd7-47f7-4e9a-b31b-221ad731fc5a",
"weight": 50.0,
"description": {
"content": "Spelling and Grammar",
"contentType": "text"
},
"criteria": [
{
"id": "5417252a-f810-41eb-9a83-09276a258a08",
"description": {
"content": "The essay uses proper spelling and grammar with few or no errors.",
"contentType": "text"
}
},
{
"id": "5de220bd-74b9-41a7-85d5-9be7c6cb7933",
"description": {
"content": "The essay has numerous errors in spelling and/or grammar.",
"contentType": "text"
}
}
]
}
],
"grading": {
"@odata.type": "#microsoft.graph.educationAssignmentPointsGradeType",
"maxPoints": 100
}
}