1

我有以下 xml 文档:

<?xml version="1.0" encoding="utf-8"?>
<Categories>
  <title>
    <Type name="James">
      <Field name="ref" value="79" />
      <Field name="titleref" value="55" />
    </Type>
  </title>
</Categories>

如果 textBox1 文本匹配,我想删除所有“标题”

我有以下,我知道它不起作用,但我想看看你是否能看到我的逻辑。

 xmldoc.Root.Elements().Where(x => x.Element("Type")).Where (x => x.Attribute("name").Value.Equals(textBox1.Text)).Select(x => x).Single().Remove();

任何帮助都会很棒

谢谢

4

2 回答 2

2

您可以使用XPath(System.Xml.XPath)

xmldoc.XPathSelectElements(String.Format("//Type[@name='{0}']", textBox1.Text))
      .Remove();
于 2012-12-15T22:40:16.587 回答
0
xmldoc.Root.Descendants( "Type" )
  .Where( x => x.Attribute( "name" ).Value == textBox1.Text )
  .Remove();
于 2012-12-15T22:41:13.197 回答