2

私は、このモデルのxmlを持っています:

<XML>
  <IdValue id="1">
    <Value a="1" b="2" c="3" />
  </IdValue >
  <IdValue id="2">
    <Value a="10" b="20" c="30" />
  </IdValue >
</XML>

そこで、ノードの属性 ID の値に基づいて、VB.NETプログラムで属性ab、およびの値を読み取りたいと思います。cIdValue

助けてくれませんか?

ありがとう :)

4

1 に答える 1

1

VB.Net の XML リテラルと Linq-to-XML を使用すると非常に簡単です。

次の XML があるとします。

Dim xml = <XML>
            <IdValue id="1">
                <Value a="1" b="2" c="3" />
            </IdValue >
            <IdValue id="2">
                <Value a="10" b="20" c="30" />
            </IdValue >
           </XML>

探している値を次のように簡単に抽出できます

Dim result = From id In xml.<IdValue>
             Select New With { .Id = id.@id,
                               .a  = id.<Value>.@a, 
                               .b  = id.<Value>.@b,
                               .c  = id.<Value>.@c }

For Each item in result
    Console.WriteLine(String.Format("id:{0} a:{1} b:{2} c:{3}", item.id, item.a, item.b, item.c))
Next

出力:

id:1 a:1 b:2 c:3
id:2 a:10 b:20 c:30

単一の に興味がある場合は、句<IdValue>を追加できます。Where例えば:

Dim result = From id In xml.<IdValue>
             Where id.@id = 2
             Select New With { .Id = id.@id,
                               .a  = id.<Value>.@a, 
                               .b  = id.<Value>.@b,
                               .c  = id.<Value>.@c }
于 2013-03-27T20:15:27.587 に答える