最近のアクセス:
[Json Collection Serialization] プロパティ

コレクションを JSON 形式でシリアル化する方法を指定します。

Sequence コレクションエレメントの単純なシーケンスとしてシリアル化します。
Wrapped コレクション名アイテムを含みます。これが既定値です。

適用範囲

オブジェクト: Structured Data Type
ジェネレーター: .NET.NET FrameworkJava
レベル: SDT レベルノード

説明

[ Json Collection Serialization ] プロパティは、 [ Is Collection ] チェックボックスを選択することでコレクションとして定義された SDT ノードで使用できます。
イメージ:57755.png
: Java および .NET Framework ジェネレーターでは、このプロパティは構造化データタイプ (SDT)API オブジェクトのパラメーターである場合にのみ考慮されます。プロシージャーまたはデータプロバイダーが REST として公開される場合は考慮されません。

実行時/設計時

このプロパティは実行時のみ適用されます。

上図に示すように、Countries という SDT を定義してあるとします。 
次に、CountryList という Procedure オブジェクトを以下のように定義します:
変数:
Countries     (Type:Countries)
country       (Type:Countries.Country)
ルール:
Parm(out:&Countries);
ソース:
&country = new()
&country.CountryName = "UY"
&Countries.Country.Add(&country)

&country = new()
&country.CountryName = "BR"
&Countries.Country.Add(&country)
次に、API オブジェクトのサービスソースで以下の定義を行います:
Countries{
     [ RestVerb(GET) ] 
    ListCountries(out:&Countries) => ListCountries(&Countries);
    }
F5 を押して実行すると、 [ Json Collection Serialization ] プロパティに設定した値に応じて、以下のいずれかを表示できます:
  • Wrapped:
     {
      "Countries":  [ 
        {
          "CountryName": "UY"
        },
        {
          "CountryName": "BR"
        }
       ] 
    }
  • Sequence:
     [ 
      {
        "CountryName": "UY"
      },
      {
        "CountryName": "BR"
      }
     ] 

参考情報

GeneXus の REST Web サービスとしてのプロシージャー
GeneXus の REST Web サービスとしてのデータプロバイダー


サブページ
Created: 22/03/14 00:48 by Admin Last update: 24/08/21 18:34 by Admin
カテゴリ
Powered by GXwiki 3.0