XML を自動的に生成し、検証のためにクライアント サイトに手動でアップロードする必要がある XML の生成に問題があります。
クライアントの仕様では、先頭に DTD 宣言を含める必要があります。あれは
<!DOCTYPE TheFile System "TheDTD.dtd" "">
プログラムで XML 行を生成しようとすると、
XmlDocumentType doctype;
doctype = doc.CreateDocumentType("TheFile", null, "TheDTD.dtd", null);
doc.AppendChild(doctype);
失敗し、「TheDTD.dtd」が Windows ディレクトリに存在する必要があると尋ねられます: C:\Windows\System32\inetsrv
後で XmlDoc を読みたい場合は、次の行
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(xmlLocation);
失敗し、プロジェクト全体が保存されているプロジェクトディレクトリに「TheDTD.dtd」が存在する必要があるかどうかを尋ねられます
私は実際に DTD を検証したくはありません。検証はクライアント側で行われるため、参照したいだけです。実際の .dtd を 2 つの異なる場所にコピーすることなく、XML に行 " " を追加する方法はありますか?
宣言を公開し、これを
<!DOCTYPE TheFile PUBLIC "TheDTD.dtd" "">
その後、すべてが正常に機能しますが、クライアントはそれが PUBLIC ではなく SYSTEM であることを要求します。実際の .dtd が欠落している場合、CreateDocumentType と Load メソッドがクラッシュしないことを願っています。この時点では、このファイルさえ持っておらず、私の目的には必要ないからです。
ありがとうございました