.NET で解析しようとしている少し悪い XML があります。この同じ XML ファイルは、他のパーサーで使用できます。つまり、パーサーはユーザー エラーに対してより寛容です。
XML は次のようになります。
<?xml version="1.0" encoding="UTF-8"?>
<kml>
<Document id="12345">
<name>My name</name>
<description>My Description</description>
<myns:author>
<myns:name>My Name</myns:name>
</myns:author>
</Document>
</kml>
私は次のようにロードします:
XmlDocument doc = new XmlDocument();
doc.Load(myFilePath);
この 2 行目は、正当に例外をスローします。
'myns' is an undeclared prefix. Line 6, position 4.
アプリケーションの観点から見ると、私たちは主に、このわずかに間違った XML ファイルを処理できる別のアプリケーションへの導管として機能しています。このサードパーティ アプリケーションが処理できるこの XML を拒否したくありません。
.NET XML パーサーの厳密性を無効にするか変更する方法はありますか?