私は共通の最初のプロパティのみを持つさまざまなjsonsのトンを解析しています。 この最初のプロパティの値によっては、JSONを別のオブジェクトに解析して、考えられるエラーを別の方法で処理します。しかし、jsonは有効ではありませんが、最初のプロパティの値を知りたい(有効である限り)ので、解析エラーを処理できます。これがJson.Net
で可能かどうか疑問に思っていました。もちろん私は、少なくとも第一の特性が有効であること例えば、このようなものを想定していますJsonが有効でない場合でも最初のプロパティを解析する方法は?
{
"parsingType":"sometype",
"someothervalue":123,
"someval"123,
}
例外がスローされているので、私は.Parse
を使用しているとき、私は何の結果を取得しない次のことを試してみましたが、:
JToken jtoken = JToken.Parse(json);
var theValueIWantToGet = jtoken["parsingType"].Value<string>();
この値のみに興味があるので、なぜそれをまったく解析しないのですか?ちょうど文字列検索を行います。それも速くなるでしょう。 – Transcendental
JSONで正確に何をやっていますか?それともどこからそれを得るのですか?独自のアプリケーションやサービスから来ている場合は、 'TypeNameHandling.All'と' FormatterAssemblyStyle.Simple'を 'JsonSerializerSettings'で追加することができます。これにより、デシリアライザはあなたのアセンブリ内で正しいタイプを認識して見つけることができます。 – rinukkusu
[無効なjsonをどのように逆シリアル化できますか?]のようにJsonReaderを使用してみてください。オブジェクトの切り捨てリスト](http://stackoverflow.com/q/36576928/10263) –