2016-08-02 3 views
-1

で検索アプリケーションを開発中です。私はのXMLファイルにデータを保存しています。テキストボックスでデータを検索して[送信]ボタンをクリックすると、完全なXMLファイルを検索してデータを取得する必要があります。私はそれは私がこれを行うことができますvamshiのdetails.howを表示する必要があるテキストボックスに、このフォーム「vamshiの詳細」で検索した場合 これは...今XMLファイルからデータを検索する方法は?

<college> 
    <students> 
     <student> 
      <name>harish</name> 
      <id>002</id> 
     </student> 
     <student> 
      <name>vamshi</name> 
      <id>003</id> 
     </student> 
    </students> 
</college> 

サンプルXMLデータ..です

+0

古典的なDOMオブジェクトXmlDocumentをxpathまたはXDocumentを.net 4.0から使用してみてください。 msdnによると、これはXmlDocumentの新しいバージョンであり、古いものよりも少し速いです。 また、Xdocumentの方がはるかに簡単です。 http://stackoverflow.com/questions/1542073/xdocument-or-xmldocument – 0cool

答えて

0

あなたが探しているものを達成するためには、まずxmlファイルをC#オブジェクトに解析する必要があります。これを行うことで、xmlファイルをメモリにロードします。

次に、組み込みのC#xmlパーサー関数を使用して、与えられた情報でxmlノードをトレースします。あなたのケースでは、生徒オブジェクトの「名前」属性です。

XmlDocument doc = new XmlDocument(); 
doc.Load(@"C:\Path\To\Xml\File.xml"); 
XmlNode node = doc.SelectSingleNode("//Student/Name/"); 
// node.Value contains "[email protected]" 
0

カスタムテキスト検索プロセスを使用して、xmlをテキストファイルであるかのように検索できます。しかし、私はこれをお勧めしません。

私の意見では、xmlファイルをプログラムのクラスcollegeにダンプすることをお勧めします。

は、これを実現するには、次の

  1. セットアップcollegeクラスとstudentクラスは、XMLファイルを一致させます。例えば。大学にはList<student>が、学生にはidnameが必要です。おそらく両方の文字列に先行するゼロがあるためです。
  2. Download and add this XML helper class to your project

  3. は、あなたが作成したクラスにあなたの大学のXMLをダンプ:

    College c = new College();   
    c = XmlHelper.FromXmlFile<College>(@"/path/to/XML/File"); 
    
  4. あなたの大学のクラスは、現在、XMLからデータが移入され、そしてあなたが望む検索操作を実行することができます。

希望します。

関連する問題