C#でJSONのシリアライズ/デシリアライズ

Json.NETで。

シリアライズ

string ret = JsonConvert.SerializeObject(hoge);

デシリアライズ

var settings = new JsonSerializerSettings
{
    NullValueHandling = NullValueHandling.Ignore, // nullの場合はクラスのプロパティを無視する
    MissingMemberHandling = MissingMemberHandling.Ignore // プロパティがデシリアラズする側に存在しない場合は無視
};
Hoge hoge = JsonConvert.DeserializeObject<Hoge>(json, settings);

Core 3.0以降なら System.Text.Json がいいかも。Microsoft公式だし。