15

C# クラスが必要とするプロパティが文字列にない場合は、Json.NETをスローしたいと思います。JsonSerializationExceptionJson

ありMissingMemberHandling Enumerationます

逆シリアル化中に欠落しているメンバーが検出された場合、JsonSerializationException をスローします。

しかし、これは私が望むものの逆だと思います。これは、c# クラスのメンバーが欠落していることを意味すると思います。行方不明の Json メンバーが必要です。

私のコードは

public MyObj Deserialise(string json)
{
    var jsonSettings = new JsonSerializerSettings();
    jsonSettings.MissingMemberHandling = MissingMemberHandling.Error;

    return JsonConvert.DeserializeObject<ApiMessage>(json, jsonSettings);
}

例えば

public class MyObj
{
    public string P1 { get; set; }
    public string P2 { get; set; }
}

string json = @"{ ""P1"": ""foo"" }";

json に P2 がありません。これがいつなのか知りたいです。

ありがとう。

4

2 に答える 2