Skip to main content

 

 

 

 
Language:
 
Service Studioバージョン :
 
 
OutSystems

JSON Serialize

JSON Serializeは、以下のデータ型をJSONデータ交換形式のテキストに変換します。

  • レコード
  • レコードのリスト

プロパティ

名前 説明 必須 デフォルト値 備考
Name 画面、アクション、モジュールといった、定義されているスコープ内の要素を識別します。 Yes
Description 要素を文書化するテキスト。 文書化の際に便利です。
このプロパティの最大サイズは2,000文字です。
Data JSON文字列にシリアル化されるデータのレコードまたはリスト。 Yes
Serialize Default Values [Yes]に設定すると、必須ではないJSONアトリビュートを設定されたデフォルト値のセットでシリアル化します。 Yes No
Date Format JSON文字列で使用される日付形式。 Yes 2014-01-01T00:00:00Z (ISO)

ランタイムプロパティ

名前 説明 読み取り専用 備考
JSON JSON形式の文字列。 Text

その他の注記

JSON Serializeに関するその他の注記を以下に示します。

大きい数字

クライアント側(クライアントアクションなど)で、Long Integer型またはDecimal型の大きい値(9007199254740991を超える値)が関係するJSON Serialize/Deserializeを実行すると問題が発生する場合があります。

サーバー側でシリアル化/逆シリアル化操作を実行する際は、.NETの制限が適用されます。一方、クライアント側のJavaScriptでこれらの操作を実行する際は、JavaScriptの制限が適用されます。

JavaScriptには、MAX_SAFE_INTEGERとして定義された値9007199254740991のLong Integer型またはDecimal型の値を使用する際の制限があります。MAX_SAFE_INTEGERより大きいLong Integer型またはDecimal型の値が関係するJSONのシリアル化/逆シリアル化操作を実行すると、問題が発生します。

JavaScriptでこれを超える数字をサポートするため(Long Integer型またはDecimal型の変数を使用する場合など)、プラットフォームではカスタムシリアル化メソッドを使用して数字を文字列に変換します。このようにして、クライアントとサーバー間のすべてのプラットフォームの内部通信では、数字ではなく文字列が使用されます。

プラットフォームと同じこのメカニズムを使用して、MAX_SAFE_INTEGERを超える数値をシリアル化/逆シリアル化することができます。これを行うには、JSONのシリアル化/逆シリアル化操作をクライアント側ではなくサーバーアクション内で実行します。

デフォルト値のシリアル化

Serialize Default Valuesを[Yes]に設定してデフォルト値を空にすると、プラットフォームのデフォルト値に相当するJSONが生成されます。以下に例を示します。

  • 空のBoolean型はfalseに変換**
  • 空のInteger型は0に変換**
  • 空のDateTime型はは1900-01-01T00:00:00に変換**
  • Was this article helpful?