多くの論争の後、私は最終的に、関連付けを持つクラスの Web API で Json の結果が適切に機能するようになりました。
public string GetAll()
{
var order =_repository.GetAll();
var settings = new JsonSerializerSettings
{
ReferenceLoopHandling = ReferenceLoopHandling.Ignore
};
return JsonConvert.SerializeObject(order, settings);
}
しかし、ブラウザーまたは Fiddler のいずれかでテストすると、次のような典型的なものではなく、
(ア)
"Books":
[
{
"Id": "1",
"Name": "Book1",
"Authors":
[
{
.......
}
]
}
]
(B) 私はこれを得る:
"[{\"Id\":1,\"名前\":\"Book1\",\"著者\":[{\"Id\":1,\"PersonId\":1,\"人\":null,\"本\":[{\"Id\":3,\"名前\":\"Book3\",\"著者\":[{\"Id\":4,\ "PersonId\":4,\"Person\":null,\"Books\":[{\"Id\":2,\"Name\":\"Book2\",\"Authors\":[ {\"Id\":2,\"PersonId\":2,\"Person\":null,\"本\": .....
上記のA.のようにフォーマットするために何をしなければならないか教えてもらえますか?
ありがとう
アップデート:
ところで、 Formatting.Indented はそれをさらに悪化させました:
"[\r\n {\r\n \"ID\": 1,\r\n \"名前\": \"Book1\",\r\n \"著者\": [\r\n {\r\n \"ID\": 1,\r\n \"PersonId\": 1,\r\n \"Person\": {\r\n \"ID\": 1,\r \n \"FirstName\": \"John\",\r\n \"LastName\": \"Doe\"\r\n },\r\n \"Books\": [\r\n {\r\n \"ID\": 3,\r\n \"名前\": \"Book3\",\r\n \"著者\": [\r\n {\r\n \ "Id\": 4,\r\n \"PersonId\": 4,\r\n \"Person\": {\r\n \"Id\": 4,\r\n \"FirstName\ ": \"ジュリー\",\r\n