Quantcast
Channel: ソフラボの技術ブログ
Viewing all articles
Browse latest Browse all 166

VB.NETでXMLリテラルを使ったXMLの定義方法

$
0
0

f:id:shinsuke789:20141128121500j:plain

XMLリテラル

VB.NETでは、XML文字列をXMLオブジェクトとして簡単に定義できます。

Dim element As XElement =<root><users><user id=""/></users></root>

変数を使う

変数を使って値を設定したい場合、<%= 変数名 %>を使用します。

Dim id AsInteger=1Dim element As XElement =<root><users><user id=<%= id %>/></users></root>

要素を変数で定義する

要素名を変数で定義し、</>を設定します。

Dim elementName AsString="users"Dim id AsInteger=1Dim element As XElement =<root><<%= elementName %>><user id=<%= id %>/></></root>

属性を変数で定義する

属性名と属性値を別々の変数で定義し、「=」を挟んでXMLを定義します。

Dim attr AsString="id"Dim id AsInteger=1Dim element As XElement =<root><users><user <%= attr %>=<%= id %>/></users></root>

配列やリストを展開する

配列やリストを展開してXMLを追加したい場合、LINQFrom / Selectを使用します。

Dim list AsNew List(Of Integer)(NewInteger() {1,2,3})Dim element As XElement =<root><users><%= From id In list
          Select<user id=<%= id %>/>
      %></users></root>

条件によって要素を追加する

条件によって要素を追加したい場合、ワンライナーIfを使用し、条件に一致しない場合、Nothingを設定すると追加されません。

Ifは、VS2008から使用できます。それ以前の場合、IIF関数を使用します。

Dim id AsInteger=1Dim flg AsBoolean=TrueDim element As XElement =<root><users><%=If(flg,<user id=<%= id %>,Nothing) %></users></root>

逆引き大全


Viewing all articles
Browse latest Browse all 166

Trending Articles