XmlTextReader и встроенный ресурс DTD
Я пытаюсь создать один EXE без каких-либо зависимостей (за исключением.NET Framework:-). Программа включает в себя анализ нескольких документов XML (с использованием XmlTextReader), которые используют один и тот же DTD. DTD упоминается только одним именем в документе, так что до сих пор я имел его как "Копировать, если новее", поэтому он находится в той же папке, что и сам EXE.
Теперь я хотел бы встроить этот DTD в качестве встроенного ресурса в мой проект. Я предполагаю, что мне понадобится пользовательский XmlResolver, чтобы сделать мой XmlTextReader счастливым, но я не был уверен, как это выглядит. Какой секретный соус?
1 ответ
Там нет секретного соуса. Просто Google для "XmlResolver", и вы найдете статью " System.Xml.XmlResolver class". Внизу вы найдете ссылку " Настройка класса XmlUrlResolver".
Используйте экземпляр вашего собственного распознавателя в качестве свойства XmlResolver экземпляра XmlReaderSettings, который вы используете в своем вызове XmlReader.Create.