1

VS2010 と VS2012 の両方でコンパイルしたい C# プロジェクトを書いています。.csprojVS2010 プロジェクトは VS2012 ソリューションに直接含めることができますが、そのために2 つの異なるファイルが必要です。ターゲットの .NET バージョンが異なるため、2 つの異なるプロジェクト ファイルが必要です。

さらに、VS2010 と VS2012 の異なるソリューション内で、両方のプロジェクトに同じ名前を付けたいと考えています。両方が同じ.csファイルと、場合によってはいくつかのリソースを共有する必要があります。

簡単な作業?奇妙なことですが、それを適切に行う方法がわかりません。

  • 最初のアプローチは機能しません。プロジェクト ファイルにMyProject10.csprojandという名前を付け、両方をフォルダーMyProject12.csprojに残します。MyProjectただし、この場合、単に ではなくMyProject10およびとしてソリューションに表示されます。ソリューション エクスプローラーで名前を に変更すると、対応するプロジェクト ファイルの名前が自動的に変更されます。MyProject12MyProjectMyProject

  • 2 番目のアプローチは機能しますが、欠点があります。プロジェクト ファイルを と という名前の別のサブディレクトリに移動VS10し、手動で-files のVS12インクルード パスを変更し、プレフィックスとして追加します。この場合、ソリューション エクスプローラーのアイコンの下に奇妙なショートカットのような矢印が表示されます。.csproj..\

2 番目のアプローチの唯一の欠点は、ソリューション エクスプローラーを使用してプロジェクトに新しいファイルを追加すると、このファイルがVS10ルート プロジェクト ディレクトリではなくサブディレクトリに配置されることです。しかし、.csproj-files のプロジェクト ディレクトリは、設計上、ファイルを含むディレクトリであるように思われます。

より良いアイデアはありますか?

4

1 に答える 1

0

試してみる価値があるのは、両方のプロジェクトの出力アセンブリの名前を同じものに変更することです。プロジェクト ファイルは引き続き異なりますが、出力アセンブリは同じ名前になります。出力ディレクトリの場所にも注意してください。この方法で問題を解決できると思います。

于 2013-02-07T09:52:39.787 に答える