以下代码适用于教室中的大多数学生提交作业时,但它会引发异常并为某些学生抛出 400 错误:
var classroom = GetClassroomService();
var studentSubmissionsResponse = classroom.Courses.CourseWork.StudentSubmissions.List(courseId, courseWorkId).Execute();
var submission = studentSubmissionsResponse.StudentSubmissions.FirstOrDefault(s => s.AssociatedWithDeveloper ?? false);
var modifyAttachmentRequest = new global::Google.Apis.Classroom.v1.Data.ModifyAttachmentsRequest();
var link = new global::Google.Apis.Classroom.v1.Data.Link() { Url = url };
var attachment = new global::Google.Apis.Classroom.v1.Data.Attachment() { Link = link };
modifyAttachmentRequest.AddAttachments = new System.Collections.Generic.List<global::Google.Apis.Classroom.v1.Data.Attachment>();
modifyAttachmentRequest.AddAttachments.Add(attachment);
submission = classroom.Courses.CourseWork.StudentSubmissions.ModifyAttachments(modifyAttachmentRequest, courseId, courseWorkId, submission.Id).Execute();
/// submission code is after this; the exception is thrown by the call above
例外是:
The service classroom has thrown an exception: Google.GoogleApiException: Google.Apis.Requests.RequestError
Request contains an invalid argument. [400]
Errors [
Message[Request contains an invalid argument.] Location[ - ] Reason[badRequest] Domain[global]
]
不幸的是,C# 客户端库目前还不支持显示详细的错误消息。
关于可能发生的事情有什么想法吗?如何排除故障?