VS2005です。
現在XMLReaderで読み込み1行ずつ処理をしています。
'ファイルが存在する場合はインスタンスを作成
reader = New XmlTextReader(strXmlPath)
Dim xmlTblNode As XmlNode
'XMLから指定idのラベル表示名を取得して、画面のラベルに設定
Do While (reader.Read())
If reader.NodeType = XmlNodeType.Element Then
If reader.HasAttributes Then
'XMLの値を取得
reader.MoveToAttribute("id")
strId = reader.Value
reader.MoveToAttribute("name")
strNm = reader.Value
省略していますが上記のようにしています。
しかし、IDに{1,2,3,4,5,6}とあったとして
1行ずつ処理しなくてSQL分で WHERE ID = 5 のように
指定したデータが取得したいのですがどうすればいいのでしょうか?
どうかご教示願います。
XmlReader を使う限り、要素を一つずつ読んでいくのは仕方ないでしょう。
XmlDocument に一気に読み込んで XPath で検索するという手はありますが。
更に SQL となると…… XLinq
って途中送信 orz
XLinq って今どうなってるんだろう、と思いつつ。
Access とかにインポートしてとか言う事になるのかな。できるかどうか知らないけど。
返信ありがとうございます。
XmlDocument.Xpathみたいなので解決できるんですね。
早速Helpみながら試してみます。
XPathでクエリを書くことで解決できました。
ありがとうございました。
ツイート | ![]() |