1

私のxmlファイルは次のとおりです。

   <Default>
      <CareSettingName>
         <Name>Hosp1/Name>
         <Name>Hosp2/Name>
         <Name>Hosp3/Name>
         <Name>Hosp4/Name>
       </CareSettingName>
      <DocNames>
         <Name>Doc1/Name> 
         <Name>Doc2/Name> 
         <Name>Doc3/Name> 
        </DocNames>
    </Default>

次のコードを使用して、Hosp4 を削除しようとします。

 XmlDocument xmlDoc = new XmlDocument();
 xmlDoc.Load(localXMLfile);
 XmlNode node = xmlDoc.SelectSingleNode("/Default/CareSettingName[Name='Hosp4']");

 node.ParentNode.RemoveChild(node);
 xmlDoc.Save(localXMLfile);

これを実行すると、探している単一のエントリではなく、CareSettingName のすべてのエントリが削除されます。問題を見つけることができません。誰か助けてくれませんか?

誰でも私を助けてもらえますか?ありがとう。

4

1 に答える 1

2

これは、選択しているためです(等しい/Default/CareSettingNamea が含まれている場合)。NameHosp4

xpath を次のように変更してみてください。

/Default/CareSettingName/Name[.='Hosp4']
于 2013-02-10T06:10:43.300 に答える