私のWebおよびワーカーの役割では、コアフレームワークDLLの代替バージョンを参照しています。ファイルはCopy Local
とマークされています。 Visual Studioはプロジェクト参照として正しいバージョンを表示します。プロジェクトをコンパイルするときには、bin
ディレクトリにも正しいバージョンが含まれています。Azureパッケージに不正なDLLが含まれています
しかしAzureパッケージを作成するようにVisual Studioに依頼すると、パッケージ(およびパッケージ化中に作成されたcsx
フォルダ)には、ワーカーロール専用の間違った(元の)DLLが含まれます。 Webロールには正しいDLLがあります。これは私が手動でcspack
を使用した場合には発生しませんが、これはパッケージ化するのに望ましい方法ではありません。
Visual Studioで正しい参照DLLを使用してコンパイルできますが、間違ったDLLをバンドルする可能性がありますか?そのように
Copying file from "C:\Users\bytenik\Dropbox\Treadmarks\lib\EntityFramework\System.Data.Entity.dll" to "C:\Users\bytenik\Dropbox\Treadmarks\src\Azure\obj\Debug\Worker\System.Data.Entity.dll".
Copying file from "C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Data.Entity.dll" to "C:\Users\bytenik\Dropbox\Treadmarks\src\Azure\obj\Debug\Worker\System.Data.Entity.dll".
、私の参照をコピーしているようだし、それをコピー:
追加情報: 私は代わりのVisual Studioのパッケージングを行うためにmsbuild
を実行すると、私は次の2行を参照してくださいシステム参照を使用します。
注:私は、.NET CLR DLLを置き換えるの全体のコンセプトは、巨大なハックであることを十分承知しています。 .NET 4.5が必要な機能をサポートするようになると、これはすべて削除されます。その間、私は開発を続けることができる必要があります。
「Azure References Incorrect DLL」は実際には間違っていて、有効であったが、私の問題を解決できなかった回答につながっています。
を参照してください。ありがとう。 – Kev
@Kev私はそれについて考えましたが、答えのすべては意味をなさないでしょう。 –