C++ Win32 アプリケーションで xslt トランスフォーマーを使用しており、別の xsl ファイルに分割したい共通部分を持ついくつかの xsl ファイルを使用しています。すべての xsl ファイルはリソースとして保存されます。私が xsl:include で遭遇した唯一の方法は、 xsl ファイルに対して適切に機能しない res:// プロトコルを使用することです (少なくとも 2 つの Windows インストールで、結果の xslt ファイルをロードするとエラーが返され、1 つのインストールでは正常に機能しました)。MSDN もこの問題について言及しています: http://support.microsoft.com/?scid=kb%3Ben-us%3B220830&x=13&y=12
以下以外のオプションはありますか?
- 含まれている xsl ファイルをロードするための独自のプロトコル ハンドラーを実装することは価値がありません。
- <xsl:include> を避けて、インクルード ファイルを自分で置き換えるのは面倒です。
- すべてのテンプレートでの共通部分の重複 - いいえ、ありがとうございます。