0
這一直使我瘋狂的一整天。我有一個xdocument,只是想改變一個值。LINQ to XML - 修改
XML看起來如下
<session>
<immediate>
<pivot name="test">
<axes>
<axis position="SLICERS">
<attribute name="Book">
<selection value="Book_Name" type="Book" />
</attribute>
<attribute name="Result Namespace">
<selection value="blah blah" />
</attribute>
<attribute name="Date">
<selection value="2012-05-16" />
</attribute>
<attribute name="Measure">
<selection value="123" />
</attribute>
</axis>
<axis position="SIDE">
<attribute name="ttx" mode="ALL"></attribute>
</axis>
<axis position="TOP">
<attribute name="hhy" mode="ALL"></attribute>
</axis>
</axes>
<source name="risk" />
<aggregate expression="SUM(Money Value)" />
<grid-processor name="errors" />
</pivot>
</immediate>
</session>
我想要做的就是簡單地改變
<attribute name="Book">
<selection value="Book_Name" type="Book" />
</attribute>
到
<attribute name="Book">
<selection value="CorrectBookName" type="Book" />
</attribute>
我想使用LINQ和曾嘗試的XElement - 我可以得到該塊,但不能更新
XElement amend = xdoc.Descendants("attribute").First(el => (String)el.Attribute("selection") == "value");
任何人有什麼想法?
我一直在嘗試。 amend.SetAttributeValue(「value」,「CorrectBookName」); 導致 <屬性名= 「書」 的值= 「CorrectBookName」> <選擇值= 「BOOK_NAME」 類型= 「書層次」/> – user1156000 2012-07-23 15:24:30
忽略因 - 根據需要來選擇一個新的水平 的XElement修改= xdoc.Descendants(「selection」)。First(el =>(String)el.Attribute(「type」)。Value ==「Book Hierarchy」); – user1156000 2012-07-23 15:26:34