1

現在、jsonスキーマをで解析する際に問題が発生していますJson.NET。私のスキーマは配列で構成されており、そのアイテムは、以下の例で説明されているように、2つの異なるタイプにすることができます。

"Operations": {
        "type": "array",
        "id": "Operations",
        "required": true,
        "items": {
            "type": [
                {
                    "type": "object",
                    "properties": {
                        "Sale_ID": {
                            "type": "number",
                            "id": "Sale_ID",
                            "required": false
                        },
                  },
                    "additionalProperties": false
                },
                {
                    "type": "object",
                    "properties": {
                        "Purchase_ID": {
                            "type": "number",
                            "id": "Purchase_ID",
                            "required": false
                        },
                  },
                    "additionalProperties": false
                }

このスキーマは複数のバリデーターで検証され、常に成功しました。私はそれを:として解析しようとしていますJsonSchema

JsonSchema js = JsonSchema.Parse(schemaAsString);

しかし、私は:を取得しJsonReaderExceptionます

例外JSONスキーマタイプの文字列トークン、StartObjectを取得

私のアイテムタイプが文字列ではないため、これが発生すると思います。で非文字列型を定義できるJson.NETかどうか、またはこれが既知の問題/制限であるかどうかを知りたいです。

4

1 に答える 1

2

Json.NETtypeプロパティで複雑なスキーマをサポートしていません。

アップデート:

Json.NETスキーマは、ドラフト3とドラフト4を完全にサポートするようになりました。これには、typeプロパティでの複雑なスキーマのサポートが含まれます。

于 2013-01-29T22:46:02.463 に答える