0
이것은 하루 종일 나를 미치게했습니다. xdocument가 있고 값을 변경하기 만하면됩니다. 나는 내가 LINQ를 사용하고자하고 XElement를 시도 단순히LINQ to XML - 수정
<attribute name="Book">
<selection value="Book_Name" type="Book" />
</attribute>
에
<attribute name="Book">
<selection value="CorrectBookName" type="Book" />
</attribute>
변경되어 수행 할 작업을
<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>
을 다음과 같이
XML 보인다 - 블록을 얻을 수 있지만 업데이트는 없습니다.
XElement amend = xdoc.Descendants("attribute").First(el => (String)el.Attribute("selection") == "value");
누구든지 아이디어가 있습니까?
나는 이것을 시도해 왔습니다. amend.SetAttributeValue ("value", "CorrectBookName"); 에서 결과는 <이름 = "책"속성 값 = "CorrectBookName"> <선택 값 = "BOOK_NAME"유형 = "책 계층 구조"/> – user1156000
그 무시 - 가 XElement를 수정 다음 레벨을 선택하는 데 필요한 = xdoc.Descendants ("selection"). 첫 번째 (el => (String) el.Attribute ("type"). 값 == "Book Hierarchy"); – user1156000