2010-08-25 43 views
2

我想測試(公共)屬性添加到我的所有XML文件。所以當我想測試它們時,我可以將它用作一個共同的屬性。添加屬性到XML文件中的LINQ C#

我試圖CreateAttribute但LINQ的這麼想的識別它

我試過 「xElement.Add(新XAttribute(」 測試 「值));」但它也沒有工作 有什麼建議?

感謝

這裏有個例子是一個代碼

public void updateXmlFile(string strFileName) 
    { 
     XDocument oXDoc = XDocument.Load(strFileName); 
     XElement oDcElement = oXDoc.Root.FirstNode as XElement; 

     //Generate a Unique String to replace the original attribute value 
     string newValue = GetUniqueKey(); 

     //oDcElement.Add(new XAttribute("Test", newValue)); /*NullReferenceException*/ 

     oDcElement.Attribute("Remark").Value = newValue; //This changes only the Remark Attribute 
     oXDoc.Save(strFileName);       //which isn't available in all XMLs 

    } 

我想一個額外的,共同的價值添加到我通過這種方法,XML,並給它一個隨機值

我的目標是能夠使一個XML的變化則對原來的副本複製到另一個文件夾比較

+0

你似乎是在正確的線路,請你能粘貼完整的源代碼? – TimS 2010-08-25 10:47:48

回答

8

使用的setAttribute:

oDcElement.SetAttributeValue("Test", newValue); 
+0

我想我不能這樣做,因爲我從數據庫中檢索數據,如果我想添加一個屬性我有一個額外的coloumn添加到數據庫。 – Reda 2010-08-26 06:17:54

+0

你原來的問題沒有提到數據庫。它只是爲從文件系統加載的XML文件的節點添加一個新屬性。我不明白你的意見是什麼意思。 – PatrickSteele 2010-08-26 12:10:41

+0

比較遺憾的是更加明確下一次I'l是 – Reda 2010-08-26 13:49:12