将 JSON 响应转换为 Graph.EducationAssignment 对象
Convert JSON response to Graph.EducationAssignment Object
当我尝试将 JSON 响应转换为 Graph.EducationAssignment
根对象时,没有数据。我没有收到任何错误消息,只有一个空对象。
我打电话给/beta/education/classes/{classId}/assignments
HttpResponseMessage response = await HttpClient.GetAsync(webApiUrl);
if (response.IsSuccessStatusCode)
{
string json = await response.Content.ReadAsStringAsync();
Microsoft.Graph.EducationAssignment Assignments =
JsonConvert.DeserializeObject<Microsoft.Graph.EducationAssignment>(json);
// List<Microsoft.Graph.EducationAssignment> Assignments1 =
// JsonConvert.DeserializeObject<List<Microsoft.Graph.EducationAssignment>>(json);
}
由于响应的大小,这里是第一行,它表明赋值保存在一个数组中。
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#education/classes('id')/assignments",
"value": [
{
"classId": "blah-blah",
"displayName": "The homeless",
"closeDateTime": null
如果有人能帮助我,我将不胜感激。
你没有描述 Microsoft.Graph.EducationAssignment
长什么样,也没有描述它来自哪里。最可能的问题是您正在尝试将资源集合(包含在 value
中)反序列化为单个对象。
除非您熟悉 OData 和 JSON 序列化,否则我会避免尝试 hand-craft 您自己的 Graph 客户端。使用 Microsoft Graph Beta SDK 会更轻松。 SDK 将为您处理所有这些,您最终会得到更清晰的代码:
var assignments = await graphClient
.Education
.Classes["id"]
.Assignments
.Request()
.GetAsync();
var assignment = await graphClient
.Education
.Classes["id"]
.Assignments["id"]
.Request()
.GetAsync();
当我尝试将 JSON 响应转换为 Graph.EducationAssignment
根对象时,没有数据。我没有收到任何错误消息,只有一个空对象。
我打电话给/beta/education/classes/{classId}/assignments
HttpResponseMessage response = await HttpClient.GetAsync(webApiUrl);
if (response.IsSuccessStatusCode)
{
string json = await response.Content.ReadAsStringAsync();
Microsoft.Graph.EducationAssignment Assignments =
JsonConvert.DeserializeObject<Microsoft.Graph.EducationAssignment>(json);
// List<Microsoft.Graph.EducationAssignment> Assignments1 =
// JsonConvert.DeserializeObject<List<Microsoft.Graph.EducationAssignment>>(json);
}
由于响应的大小,这里是第一行,它表明赋值保存在一个数组中。
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#education/classes('id')/assignments",
"value": [
{
"classId": "blah-blah",
"displayName": "The homeless",
"closeDateTime": null
如果有人能帮助我,我将不胜感激。
你没有描述 Microsoft.Graph.EducationAssignment
长什么样,也没有描述它来自哪里。最可能的问题是您正在尝试将资源集合(包含在 value
中)反序列化为单个对象。
除非您熟悉 OData 和 JSON 序列化,否则我会避免尝试 hand-craft 您自己的 Graph 客户端。使用 Microsoft Graph Beta SDK 会更轻松。 SDK 将为您处理所有这些,您最终会得到更清晰的代码:
var assignments = await graphClient
.Education
.Classes["id"]
.Assignments
.Request()
.GetAsync();
var assignment = await graphClient
.Education
.Classes["id"]
.Assignments["id"]
.Request()
.GetAsync();