我在学校的课程和学生之间有多对多的关系。这是我的课程内容:
public class Course
{
public Guid CourseId { get; set; }
public string Name { get; set; }
public ICollection<CourseStudent> Students { get; set; }
}
public class CourseStudent
{
public Guid CourseId { get; set; }
public Guid StudentId { get; set; }
}
我正在使用JsonPatch修补对象。我正在尝试将
Students
的集合添加到集合的末尾:[
{
"op": "add",
"path": "/Students/-",
"value": [
{
"CourseId": "07264DC9-9FEB-42E2-B1EF-08D58F58C873",
"StudentId": "FB6E6988-4A56-4CA4-86E2-E23090FAD98F"
}
]
}
]
但是当我提交这个时,我得到一个例外:
“ ClassName”:“ Microsoft.AspNetCore.JsonPatch.Exceptions.JsonPatchException”,
“消息”:“值'[\ r \ n {\ r \ n \” CourseId \“:\” 07264DC9-9FEB-42E2-B1EF-08D58F58C873 \“,\ r \ n \” StudentId \“:\” FB6E6988-4A56-4CA4-86E2-E23090FAD98F \“ \ r \ n} \ r \ n]'对于目标位置无效。”,
根据Json Patch文档,该结构对我而言是正确的。知道为什么它不接受我的格式吗?
最佳答案
最终弄清楚了,格式应为:
[
{
"op": "add",
"path": "/Students/-",
"value":
{
"CourseId": "07264DC9-9FEB-42E2-B1EF-08D58F58C873",
"StudentId": "FB6E6988-4A56-4CA4-86E2-E23090FAD98F"
}
}
]