ホームページ > データベース > mysql チュートリアル > JObject 内の空の JToken または Null の JToken を確認するにはどうすればよいですか?

JObject 内の空の JToken または Null の JToken を確認するにはどうすればよいですか?

DDD
リリース: 2024-12-29 16:32:11
オリジナル
668 人が閲覧しました

How to Check for Empty or Null JTokens in a JObject?

JObject 内の空または Null JToken の確認

JObject のプロパティを反復処理する場合、プロパティが欠落しているか、空の値が含まれている可能性があります。 JSON データを SQL パラメーターにマッピングするときによく発生するシナリオを調べてみましょう。

コードでは、item["thisParameter"] を使用して特定のプロパティにアクセスします。このプロパティが存在するかどうかを確認するには、 item["thisParameter"].Count を使用できません。これは null 安全性を提供しないためです。

代わりに、JObject にプロパティが存在するかどうかを確認するには、四角形を使用します。

JToken token = item["thisParameter"];
if (token != null) {
    // Property exists
}
ログイン後にコピー

次に、空の値の問題に対処しましょう。 「空」は文脈に応じてさまざまな意味を持ちます。たとえば、空の配列 (JTokenType.Array) には要素がありませんが、空のオブジェクト (JTokenType.Object) にはプロパティがありません。このようなシナリオに対処するには、次のような拡張メソッドを作成できます:

public static class JsonExtensions {
    public static bool IsNullOrEmpty(this JToken token) {
        return (token == null) ||
               (token.Type == JTokenType.Array && !token.HasValues) ||
               (token.Type == JTokenType.Object && !token.HasValues) ||
               (token.Type == JTokenType.String && token.ToString() == String.Empty) ||
               (token.Type == JTokenType.Null) ||
               (token.Type == JTokenType.Undefined)
        }
}
ログイン後にコピー

この拡張メソッドを使用すると、定義した基準に基づいて JToken が null か空かどうかを簡単にチェックできます。

以上がJObject 内の空の JToken または Null の JToken を確認するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート