すべての Web サイトをプリコンパイルし、aspnet_merge
ツールを使用してすべての App_Web* dll ファイルを 1 つにマージしています。このツールは、対応するファイルの更新.compiled
も処理して、新しいマージされたアセンブリを指すようにします。しかし、.svc
ファイルの場合、.compiled
ファイルは更新されないため、実行時に次のエラーが発生します
[FileNotFoundException: Could not load file or assembly 'App_Web_10iin0kr, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.]
ファイルをメモ帳で開いて(マージされた dll ファイルの名前) に.compiled
置き換えるApp_Web_10iin0kr
と、すべて正常に動作します。Web
ビルドと公開はすべて自動であるため、少し面倒なので、ビルド後のステップとしてこれを行うスクリプトを作成する必要があります。これについて不平を言っているドキュメントや人々を見つけることはできませんでしたが、MSDN で新しいスレッドを開始する前に、同じ問題に遭遇したことがある場合や、回避します。