0

我使用以下方法成功地将自定义属性附加到行节点:

targetRow.SetAttribute(new DocumentFormat.OpenXml.OpenXmlAttribute("Delete", null, "1"));

...但无法使用以下 LINQ 查询查看自定义属性:

Row target = sheetData.Elements<Row>().Where(r => r.ExtendedAttributes.ElementAt(0).Value=="1").First();

我也尝试在上述查询中使用“GetAttribute”方法,但无济于事。

我应该怎么做?谢谢。

4

1 回答 1

0

尝试使用此代码获取元素或属性:

// get all elements with Delete="1" attribute
sheetData.Elements().First(elm => elm.Attribute("Delete").Value == "1")

//get first attribute of name Delete
sheetData.Elements().Attributes().First(atr => atr.Name == "Delete")

如何设置属性:

var s = "<t><a Delete=\"1\"/><a /></t>";    
var xml = XElement.Parse(s);
var atribute = xml.Elements().Attributes().First(atr => atr.Name == "Delete");

atribute.Value = "2";

//LinqPad specific call
xml.Dump();

印刷:

<t>
  <a Delete="2" />
  <a />
</t>
于 2013-01-09T16:43:41.277 回答