2014-12-23 7 views
0

Я хочу добавить атрибут в элемент. И я хочу, чтобы новый добавленный атрибут был первым атрибутом в элементе. Я использовал AddFirst(), я получил ошибку: "An attribute cannot be added to content." Я не знаю почему?не может добавить XAttribute в XElement

следующие мои коды.

XElement xmlTree = new XElement("Root", 
           new XAttribute("Att1", "content1"), 
           new XAttribute("Att2", "content2") 
          ); 

xmlTree.AddFirst(new XAttribute("test", "testAttr")); 

Любой другой способ позволяет мне добавить атрибут в качестве первого атрибута в элементе?

+0

'AddFirst' добавляет элемент' child' к элементу, а не атрибуту. И, кстати, порядок спецификаций атрибутов в теге start-tag или тег-элемента не значителен, что означает, что вы можете добавить новый атрибут в конец списка атрибутов, а синтаксический анализатор XML будет обрабатывать оба случая равнодушно. – kennyzx

ответ

0

Это решит вашу проблему. AddFirst не может использоваться в этом случае.

XElement xmlTree = new XElement("Root", 
           new XAttribute("Att1", "content1"), 
           new XAttribute("Att2", "content2") 
          ); 
      var attributes = xmlTree.Attributes().ToList(); 
      attributes.Insert(0, new XAttribute("test", "testAttr")); 
      xmlTree.ReplaceAttributes(attributes); 

 Смежные вопросы

  • Нет связанных вопросов^_^