私のプロジェクトでは、32ビットと64ビットの両方の構成を使用しています(32ビットマシンで開発しているが、64ビットマシンにデプロイしているため)。
私のプロジェクトには、「C:... \ Commons \ bin \ Debug\Commons.dll」にあるクラスライブラリが含まれています。このdllをReferencesに追加しましたが、もちろん64ビットに切り替えた場合は機能しません。
したがって、「プラットフォーム固有の参照」を追加するメカニズムが必要です。
.csprojファイルを手動で編集して次のようなものを追加できることを知っています。
<Reference Include="Commons" Condition="$(Platform) == 'x64'">
<HintPath>..\Commons\bin\x64\Release\Commons.dll</HintPath>
</Reference>
<Reference Include="Commons" Condition="$(Platform) == 'x86'">
<HintPath>..\Commons\bin\x86\Release\Commons.dll</HintPath>
</Reference>
クラスライブラリについても同じことをする必要がありますか?
VSはクラスライブラリに対しても「プラットフォーム依存の参照」のメカニズムをサポートしていないのだろうか?
upd実際には4種類のdllをリンクする必要があるようです-x86/Debug、x86 / Release、x64 / Debug、x64 / Release