2016-07-20 20 views
0

xmlで作業を始めていますが、コードを検索する方法があるかどうかを確認しようとしています。 ここでは、私がこれを行うことはできませんxmlにコードが存在するかどうかを調べるにはC#

var document =new XmlDocument(); 
     document.Load("O:\\test\\doctor.xml"); 
    XmlNode doctor; 
     XmlNode root = document.DocumentElement; 
     doctor = root.SelectSingleNode("/doctors_hospital/doctor/code='aab'"); 

..私はC#を使用してコード「AAB」を探したい、これが私のコードで私のxml

<?xml version="1.0" encoding="UTF-8"?> 
<doctors_hospital> 
<doctor> 
    <code>1757D</code> 
    <name>one</name> 
</doctor> 
<doctor> 
    <code>1169L</code> 
    <name>two</name> 
</doctor> 
... continues xml 
</doctors_hospital> 

です。なにか提案を? SelectingSingleNodeと仮定すると感謝

+0

_ _ "は、私がこれを行うことはできません" - なぜいけないのでしょうか?どのようなエラーが出ますか? –

+0

このエラーが発生しました。式はノードセットに評価する必要があります。 –

答えて

0

は、標準のXPath式を取り、何を使用したいのはこれが一致code値で全体doctorノードを選択します

/doctors_hospital/doctor[code='aab'] 

です。

+0

ジムに感謝!別の質問、私はxmldocumentクラスをよりよく理解するのに役立つガイドがありますか?ダミー用jeje –

+0

C#のドキュメントですか? C#チュートリアル?それはすべてウェブ上にある。 –

0

私はJimに同意します。あるいはLinqからXmlを使用してこれを行うこともできます。

XDocument doc = XDocument.Load(filepath);  
var codeExist = doc.Descendants("code").Any(x=>(string)x.Value == "1169L"); 

チェックこのDemo

+0

ありがとう!私はLinqについてもっと調べるつもりです。この瞬間、私はジムから答えを得るでしょう。お時間をいただきありがとうございます –

+0

確かに、私は初心者のためのソリューションを好む。 –

+0

jajaja yea、私はxmlで始まっています –

関連する問題