2012-03-02 14 views

Odpowiedz

29

Spróbuj

xElement.Element(elementName).ReplaceNodes(new XCData(value)); 
+0

Thanks :) i po prostu dodać do mnie potrzebował CDATA zastąpić inny element, który miał więcej rodzeństwa węzły tak przyzwyczajeni ReplaceWith, ale pomysł powstał z twojej odpowiedzi. –

36

XCData jest rodzajem z XNode. Jako takie, należy spróbować Add go do elementu, zamiast ustawić wartość (co jest documented być spłaszczona zawartość tekstu elementu):

xElement.Element(elementName).Add(new XCData(value)); 
+1

Już opracowałem, jak to zrobić dla "dodaje". Soz! –

31

Jeśli tworzysz XElement (w porównaniu modyfikujący it), można też po prostu dodać go dodać bezpośrednio w konstruktorze jako zawartość tak:

new XElement(elementName, new XCData(value));