問題タブ [system.text.json]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - System.Text.Json で偽の値を無視する方法
.NET Core 3.0 アプリケーションでからNewtonsoft.Json
に移行しています。System.Text.Json
偽の値を無視しようとしています。
で、System.Text.Json
null 値を無視するオプションを見つけました。
しかし、で偽の値を無視するオプションが見つかりませんSystem.Text.Json
。
誰かがこれをどのように達成できるか知っていますかSystem.Text.Json
?
または、誰かが NewtonsoftDefaultValueHandling = DefaultValueHandling.Ignore
オプションに相当するものを知っていれば、それも素晴らしいでしょう。
c# - System.Text.Json の Newtonsoft.Json DefaultValueHandling = DefaultValueHandling.Ignore オプションに相当するものは何ですか
.NET Core 3.0 アプリケーションでからNewtonsoft.Json
に移行しています。System.Text.Json
で構成System.Text.Json
された .NET Core 2.2 アプリと同じ動作を得るにはどうすればよいですか? ここで説明されているオプションを見つけることができます。Newtonsoft.Json
DefaultValueHandling = DefaultValueHandling.Ignore
DefaultValueHandling
json - System.Text.Jsonでnull許容参照型を処理するには?
プロジェクトを netcore 3.0 にアップグレードし、新しい null 許容参照型機能を使用するようにプロジェクトをリファクタリングしている最中ですが、次の問題が原因ですぐに行き詰まりました。
次の JSON を返す REST API を使用するとします。
この API は常に名前/年を返すため、null 非許容です。
この単純なクラスを逆シリアル化に使用します。
Car
そして、これをnew を使用してインスタンスにデシリアライズしますSystem.Text.Json
これはすべて機能しますが、null 許容参照型を有効にすると、null 非許容として宣言されているが null になる可能性があるCar
クラスで警告が表示されます。Name
プロパティを初期化せずにこのオブジェクトをインスタンス化できるため、これを取得する理由を理解していName
ます。
したがって、理想的Car
には次のようになります。
ただし、シリアライザーSystem.Text.Json
はパラメーターを持つコンストラクターをサポートしていないため、これは機能しません。
したがって、私の質問は次のとおりです。それをnull不可に宣言し、「null不可」の警告を表示せずに動作させるにはどうすればよいCar
ですName
かSystem.Text.Json
?`
null 許容の参照型を有効にする場合、基本的にすべてに対して null チェックを行う必要があるため、null を許容したくありません。