Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Well. The answer is no. CDATAs cannot be nested in general. The nested CDATA terminating sequence will terminate the outer CDATA. However there is a trick where you can put CDATA in two consequitive CDATA sections. It works by splitting the terminating sequence in two halves.
There is one caviat though - VB 9.0 does not allow a sequence of more than one CDATA as a standalone object (one is fine though). You will have to put this sequence into an element <a> ... </a> or a fragment <> ... </> .
Here is an example (element is used):
Module Module1
Sub Main()
Dim c1 = _
<a><![CDATA[<![CDATA[some cdata here]]]><![CDATA[]>]]></a>
Dim c2 = _
<a><![CDATA[<![CDATA[some cdata here]]]]><![CDATA[>]]></a>
Console.WriteLine(c1.Value)
Console.WriteLine(c2.Value)
End Sub
End Module
======== Output:
<![CDATA[some cdata here]]>
<![CDATA[some cdata here]]>