json オブジェクトを逆シリアル化するには、子クラスのオブジェクトまたはオブジェクトの配列を含む親クラスを定義する必要がありました。オブジェクトが取得された場合はオブジェクトである必要があり、json から配列が取得された場合はオブジェクトの配列である必要があります。
JSON 配列オブジェクト
{"y":{"x":[{"data":28}, {"data":56}, {"data":89}]}}
JSON オブジェクト
{"y":{"x":{"data":28}}}
y は一度に x を受け取り、別の時点で x[] を受け取ります。y が配列またはオブジェクトを受け取るかどうかを決定する条件はありません。
したがって、配列を受け取ったかどうかを判断するために、 IsArray() 条件をチェックしています。
私は試した
class Y
{
public X x { get { return System.IsArray() ? new X() : new x[] }; set; }
}
class X
{
public int data { get; set; }
}
- それは機能していません。
- System.IsArray() が認識されない??