コボットPortal

XMLをデシリアライズ

「XMLをデシリアライズ」アクティビティのご紹介をします。


1.アクティビティのプログラム名

RCA.Activities.Core.DeserializeXml


2.説明

Studio バージョン 2.0.2.0まで

  クイックアクセス: 「ツールボックス」 > 「Xml」 > 「XMLをデシリアライズ」

Studio バージョン 2.0.3.0から

  クイックアクセス: 「ツールボックス」 > 「コア」 > 「Xml」> 「XMLをデシリアライズ」

XMLをXDocumentオブジェクトに逆シリアル化します。

※動作を確認したコボットStudioのバージョン:2.1.1.2
※バージョンによって文言などが一部異なる場合がございます


3.プロパティ

プロパティ項目プロパティ名入力欄説明
その他パブリックチェック項目ログにアクティビティ内の変数と引数がログファイルに書き込まれ、Centerにプッシュされる。(詳細は「プロパティ項目「パブリック」について」を参照)
表示名任意の文字列デザイナーパネルのアクティビティ名に反映される。
出力XMLドキュメント値を入力(XDocument型)逆シリアル化されたXMLドキュメントを変数として設定する。
入力XML文字列値を入力(String型)逆シリアル化するXMLを含む文字列かString型の変数を設定する。


4.使い方

事前準備として、プロジェクトフォルダ内配下に「Data」フォルダを作成し、その中にxmlファイルを作成しておきます。
※今回の例では、下図の「sample.xml」を作成しています。


まずは「コア」>「ファイル」>「テキストファイルを読み込む」をドラッグ&ドロップし、配置します。


プロパティにある「ファイル」>「ファイル名」に文字列かString型の変数( この例の場合では、文字列で「 "Data\sample.xml" 」)を入力し、さらに「出力」>「テキスト」に、String型の変数( この例の場合では「 xml 」)を入力します。

※変数の作成については「変数の作成」をご参照ください。


次に「コア」>「xml」>「XMLをデシリアライズ」をドラッグ&ドロップし、配置します。


プロパティにある「出力」>「XMLドキュメント」にXDocument型の変数( この例の場合では「 xmlDeserialize 」)を入力し、さらに「入力」>「XML文字列」に、文字列かString型の変数( この例の場合では、String型の変数で「 xml 」)を入力します。

※XDocumentについては「 XDocument クラス(Microsoft)」をご参照ください。


【参考】
変数パネルでXDocument型の変数を作成する際は、「型の参照」をクリックし、「型の名前」にXDocumentと入力します。次に、表示された中から「 System.Xml.Linq 」内にある「 XDocument 」を選択し、「 OK 」をクリックします。


さらに「システム」>「コントロールフロー」>「繰り返し(コレクションの各要素)」をドラッグ&ドロップし、配置します。


プロパティにある「その他」>「TypeArgument」をクリックし、さらに「型の参照...」をクリックします。


「参照して.Netの種類を選択」が表示された後、「型の名前」の入力欄に「xelement」と入力する。


さらに表示された内容から、「System.Xml.Linq」内にある「XElement」を選択し、「OK」をクリックする。


プロパティにある「入力」>「値」に入力します。
※この例の場合では「 xmlDeserialize.Element("members").Elements("member").Elements("name") 」)と入力しています。


実行結果を確認するため「システム」>「オリジナル」>「1行を書き込む」を配置し、必要な変数等を設定します。
※この例の場合では「 item.Value 」と入力していますが、「 item.Value.ToString 」と入力する事もできます。


「ホーム > スタート」をクリック、または、「F5キー」押下でワークフローを実行後、「出力パネルを」を開きます。xmlファイルにある<name>の内容が表示されている事を確認してください。



印刷
E
Erina is the author of this solution article.

この回答は役に立ちましたか? はい いいえ

フィードバックを送信
お役に立てなくて申し訳ありません。フィードバックを残し、このアーティクルを改善するのにどうかご協力ください。