【VisualStudio】ビルド構成ごとに参照アセンブリを変更させる方法

概要

 X86 (32Bit環境) / X64 (64Bit環境) で、DLLの参照先を分けたい。

まずは、参考文献を参考に Debug/Release でDLLを分けて実験中なのだがうまくいかない。
 ⇒なぜかは、分からないので、継続調査中。

実行環境

 * WinXP
 * VS2010 Express

手順

 * プロジェクトファイル(.csproj)をテキストエディタで、以下の「.csproj」のようにしても、変更した

.csproj

・・・略・・・
  <ItemGroup>
    <Reference Include="ClassLibrary1, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
      <SpecificVersion>False</SpecificVersion>
      <HintPath Condition=" '$(Platform)' == 'Debug|AnyCPU' ">a1\ClassLibrary1.dll</HintPath>
      <HintPath Condition=" '$(Platform)' == 'Release|AnyCPU' ">a2\ClassLibrary1.dll</HintPath>
    </Reference>
・・・略・・・

サンプル

呼び出し側

Form1.cs

private void button1_Click(object sender, EventArgs e)
{
    this.label1.Text = ClassLibrary1.Class1.GetMessage();
}

呼び出される側

a1\ClassLibrary1

namespace ClassLibrary1
{
    public class Class1
    {
        public static string GetMessage()
        {
            return "A1";
        }
    }
}

a2\ClassLibrary1

namespace ClassLibrary1
{
    public class Class1
    {
        public static string GetMessage()
        {
            return "B1";
        }
    }
}