Наша программа на C# читает файл XML. XML-файл имеет заголовок standalone='no'.
Раньше DOCTYPE выглядел так:
<!DOCTYPE foo SYSTEM "silly.dtd">
где silly.dtd не сидит рядом с файлом.
По разным причинам я изменил это на
<!DOCTYPE foo PUBLIC "-//Some Public Id" "urn:outerspace:silly.dtd">
Я не ожидал, что ничего изменится, так как раньше DTD нельзя было открыть как './silly.dtd', а сейчас его нельзя открыть по 'urn:outerspace:silly.dtd'. Единственная разница заключалась в том, что распознаватель каталогов не должен был беспокоиться об абсолютизации идентификатора системы.
Представьте мое удивление, когда я получил исключение из среды выполнения .NET, по-видимому, пытающееся открыть DTD по адресу urn:.
Может ли какой-нибудь добрый человек направить меня к рецепту, чтобы сказать .NET просто тихо сдаться в этом случае? Я знаю, как это сделать на Java, но в .NET я немного теряюсь.