WebフォームWebサイトプロジェクトがあります。このウェブサイトは、4つのクラスライブラリプロジェクトを参照しています。これらのクラスライブラリのうち3つはサードパーティのアセンブリを参照しています。 3つのクラスライブラリプロジェクトのそれぞれに対して、次のコンパイラエラーが発生します。Webサイト:MSB3270:プロセッサのアーキテクチャに不一致がありました
ASPNETCOMPILER:エラーASPCONFIG:ファイルまたはアセンブリ をロードできませんでした 'myAssembly' またはその依存関係の1つ。不正な形式のプログラム をロードしようとしました。 [プロジェクト。 metaproj]
私はすべてのAnyCPU/x86/x64の組み合わせをクラスライブラリプロジェクトで試しました。 Webサイトプロジェクトでこれを変更することはできません。私はサードパーティ製のdllのx86とx64バージョンの両方を持っています。両方を試してみました。
"ClassLibrary.csproj"(デフォルトターゲット)(4) - > (ResolveAssemblyReferencesターゲット) - > C:\ WINDOWS \ Microsoft.NET Frameworkの\ \ v4.0.30319 Microsoft.Common.targets \(1561 、5 ):警告MSB3270:"MSIL"という名前のプロジェクトが作成されており、プロセッサアーキテクチャが参照 "" ThirdPartyDll、Version = xxx、Culture = neutral、processorArchitectu re = x86のプロセッサアーキテクチャと一致しませんでした。 、 "x86"この不一致は、実行時の障害を引き起こす可能性があります。 ManagerのConfigurati を使用して、プロジェクトと 参照の間でプロセッサアーキテクチャを調整するか、プロセッサアーキテクチャth の参照に依存するように、ターゲットプロセッサアーキテクチャと一致するように、 プロジェクトの対象プロセッサアーキテクチャを検討してくださいあなたのプロジェクトの[ClassLibrary.cspro j]
次の図は、解決方法の構成を示しています。注意ここでは「AnyCPU」から変更することはできません。各クラスライブラリプロジェクト内からのみ変更することができます。
WebアプリケーションへのWebサイトを変換するすべての.NET 4
はオプションではありません。
おかげで、あなたの参照されるアセンブリの
David Sacksの回答を参照してください。http://stackoverflow.com/questions/10113532/visual-studio-c-c-solution-hitting-mismatch-between-processor-architecture –