2009-05-22 10 views
1

cdataセクション内のテキストを置き換えたいのですが、単純にテキストを追加しようとするとCDATA定義が失われます。CDATA内のテキストを更新するには

私はこのようなXML持っている:私は新しい値でこのフィールドを更新しようとすると

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

を:

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

出力は、私が保つことができるかどう

<title>string</title>  

ですそれはCDATAとしてですか?

答えて

2

title要素がそうのようにキャストする必要がCDataの子があります: - 私はどうなる

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

私はこれを行う方法だったと思っていました。 XmlCDataSectionクラスをチェックしています。 – Noldorin

+0

私にも勝つが、明らかなキャストが必要だが、 –

+0

@マチュー:何か他にキャストが必要ですか?私はそれを見ない? – AnthonyWJones

1

を:

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

あなたがに対処する必要はありませんその方法あなたのコードでCDATA形式(編集: ハードコーディング<![CDATA [とにかく、アンソニーによって指摘されているように動作しません)

関連する問題