2013-08-16 48 views
-1

我想寫XML,輸出低於在XML狀部分.. <abc><![CDATA[stackoverflow]]></abc>..編寫XML沒有CData的

[XmlIgnore]  
public string abc { get; set; } 

[XmlElement("abc")] 
public System.Xml.XmlCDataSection abc_NoCDATA 
{ 
    get 
    { 
     return new System.Xml.XmlDocument().CreateCDataSection(abc); 
    } 
    set 
    { 
     abc = value.Value; 
    } 
} 

我怎麼能寫XML沒有CDATA

+0

是不是返回一個字符串而不是XmlCDataSection足夠? (或者,根據您的示例,刪除除abc屬性定義之外的所有內容)。無論如何,對我來說,使用XmlSerialization以這種方式創建xmls似乎是一種延伸,但這是個人觀點。我會直接使用XmlTextWriter,XmlDocument或XDocument。 –

回答

1

你明確地返回XmlCDataSection,如果你不想要的話,這是沒有意義的。

只需使abc爲您輸出的實際XmlElement。這應該是足夠了:

[XmlElement("abc")] 
public string abc { get; set; } 

如果你想要更多的控制,可考慮使用XmlDocumentXDocument類直接從一開始就創建XML文檔,而不是序列化。