1

我正在将 Microsoft Graph API 与 Laravel 一起使用,并尝试使用其评分点(maxPoints属性)提取课程作业。终点是/education/classes/{classID}/assignments

我可以成功调用数据并转储它返回以下数据。

[
  "id" => "*****-****-****-****-*********"
  "classId" => "*****-****-****-****-*********"
  "displayName" => "Encryption and Decryption"
  "dueDateTime" => "2018-10-29T12:30:00Z"
  "status" => "assigned"
  "grading" => [
    "@odata.type" => "#microsoft.graph.educationAssignmentPointsGradeType"
    "maxPoints" => 100
  ]
]

评分返回时将其 odata 类型设置为类型EducationAssignmentPointsGradeType类,并且该maxPoints属性可用。这就是我卡住的地方。然后,我使用以下方法遍历视图中的数据:

@foreach($assignments as $assignment)
  {{ $assignment->getGrading()->getMaxPoints() }} 
@endforeach

但是,这会返回以下错误:

Call to undefined method Microsoft\Graph\Beta\Model\EducationAssignmentGradeType::getMaxPoints()

getGrading()方法是 type EducationAssignmentGradeType。但是,我不确定如何从中获取maxPoints,因为EducationAssignmentGradeType该类中没有方法。但是,该类EducationAssignmentPointsGradeType具有getMaxPoints可用的方法。

我将如何调用该getMaxPoints方法?

4

1 回答 1

0

我相信您的问题是Microsoft Graph SDK仅支持/v1.0并且分配目前仅在/beta端点中可用。

您似乎正在使用 Beta 模型,但我对这些模型的体验充其量只是成功或失败。查看EducationAssignmentGradeType模型maxPoints,自从推出测试版以来,模型似乎没有更新(模型points中也缺少它EducationAssignmentPointsGrade

于 2018-11-12T22:09:59.117 回答