C#2.0 の Xml ファイルからいくつかの XmlElements を削除しようとしています。XmlNode.Remove()
メソッドで正常に削除できます。しかし、 にはRemove
メソッドがありませんXmlElement
。
私はグーグルでこれを見つけました。
要素はノードの一種です。実際、.NET Framework の XmlNode と XmlElement のメンバーを見ると、それらが非常に似ていることがわかりますが、XmlElement にはさらに多くの機能があります。XmlNode を継承し、さらにカスタマイズされています。これは、要素がより特殊化されているためです。ノードは、スコープがより一般的です。ドキュメントはノード、処理命令はノードなどです。要素が異なります。要素の XmlNodeType プロパティを見ると、それが Element であることがわかります。これは、見つけた多くの種類のノードの 1 つです。
要素がノードのタイプである場合、なぜ削除コマンドを使用できないのですか。ではどうやって?
XmlDocument doc_AlarmSettingUp = new XmlDocument();
doc_AlarmSettingUp.Load(xmlFile_AlarmSettingUp);
XmlNode rootDest = doc_AlarmSettingUp.SelectSingleNode("/Equipment/AlarmSettingUp/EnabledALIDs");
foreach (XmlElement el_AlarmSettingUp in doc_AlarmSettingUp.SelectNodes("/Equipment/AlarmSettingUp/EnabledALIDs/ALID"))
{
XmlElement outEl;
if (lookup.TryGetValue(el_AlarmSettingUp.GetAttribute("alid"), out outEl))
{
// exists; element now in "other"
// Console.WriteLine("exists");
}
else
{
// doesn't exist
Console.WriteLine("doesn't exist");
// Then How can I remove element with an element method? Thanks.
}
}