我正在C#3.5工作。有沒有辦法阻止數字實體在XmlDocument中被展開?
我有一個XML文檔,其中包含一個元素的值內的字符實體。參考文獻是 (LF)。我不希望這個擴展到一個實際的換行,我希望它保持爲一個實體。這是因爲處理XML的商業工具需要將LF表示爲實體,而不是實際的LF。
但是,如果我將它傳遞給XmlReader附近的任何位置,它將被轉換。所以我切換到StreamReader,但它然後通過XmlDocument.Load & XmlDocument.LoadXml轉換。
我試着將XmlResolver設置爲null,禁止DTD和各種類型,但我無法讓文檔離開實體。
任何想法?我將通過一些雙重轉義來消除內容,但我想知道是否有正確的方法來做到這一點。
(它,因爲它正在通過一個Web服務作爲一個XmlNode發送到是XML-ISED在所有的原因....我不能改變API)
「處理XML的商業工具」是如何傳遞的? – Dan 2010-11-12 16:53:42
我們自己的工具正在使用我們的Web服務,並寫出一個文件,然後加載商業工具。這是我可以逃脫雙逃脫的閃光。我寧願沒有爲Web服務的其他消費者提供警告,但我只希望他們能夠將XmlNode映射到磁盤並完成它。儘管羅伯特對我的閃避作出了迴應,但我更喜歡關於XmlWriter的說明。當我回到辦公室時,我會看看代碼。 – 2010-11-14 17:20:37