2009-05-22 5 views
1

cdata 섹션 안의 텍스트를 바꾸고 싶지만 단순히 텍스트를 추가하려고 할 때 CDATA 정의를 잃게됩니다.어떻게 CDATA 내부의 텍스트를 업데이트합니까

나는이 같은 XML을 가지고

<title><![CDATA[string]]></title> 

나는 새 값으로이 필드를 업데이트하려고 :

myXmlNode.SelectSingleNode("title").InnerText = TextBoxName.Text; 

출력이

<title>string</title>  

입니다 내가 유지할 수 있습니다 어떻게 CDATA 로요?

답변

2

과 같이 캐스팅해야하는의 CDATA 아이를해야합니다 제목 요소 : -

((XmlCDataSection)myXmlNode.SelectSingleNode("title").FirstChild).Value = TextBoxName.Text 
+1

나는 이것이 내가 할 수있는 방법이라고 생각 했었지만, XmlCDataSection 클래스를 확인하는 동안. – Noldorin

+0

(명백한) 던지기를 요구하더라도 저를 치십시오. –

+0

@Matthew : 다른 작품에 캐스트가 필요합니까? 나는 그것을 볼 수 없어? – AnthonyWJones

1

나는 할 것이다 :

myXmlNode.SelectSingleNode("title").FirstChild.InnerText = TextBoxName.Text; 

당신이 처리하지 않는 방법 귀하의 코드에서 CDATA 형식 (편집 : 하드 코딩 <! [CDATA [Anthony가 지적한대로 작동하지 않음]

관련 문제