2011-04-20 92 views
1

我試圖創建一個沒有依賴關係的EXE(備用.NET Framework :-)。該程序涉及解析一堆共享相同DTD的XML文檔(使用XmlTextReader)。 DTD在文檔中僅由其名稱引用,因此直到現在,我已將它作爲「Copy If Newer」,因此它與EXE本身位於同一文件夾中。XmlTextReader和嵌入式資源DTD

現在我想將此DTD作爲嵌入式資源嵌入到我的項目中。我假設我需要一個自定義的XmlResolver來使我的XmlTextReader開心,但我不確定那是什麼樣子。祕訣是什麼?

+1

一般來說,你不應該使用'XmlTextReader'。你應該使用'XmlReader.Create()'。 – 2011-04-20 17:25:38

回答

3

沒有祕密的醬油。只需Google提供「XmlResolver」,即可找到「System.Xml.XmlResolver class」文章。在底部,您可以找到「Customizing the XmlUrlResolver class」的鏈接。

使用您的自定義解析器的實例作爲您在XmlReader.Create調用中使用的XmlReaderSettings實例的XmlResolver屬性。

+1

謝謝,現在我明白了。但你必須承認醬汁比番茄醬更接近伍斯特郡。 :-) – roufamatic 2011-04-20 18:03:35

+0

有幫助,但是一個例子本來會更好,因爲MSDN上沒有。 – NightOwl888 2016-08-21 12:42:05

+0

@night我假設受衆具有一定的能力。 – 2016-08-21 13:50:31