2

標準のasp.netアプリ(4.0フレームワーク)とシェアポイントソリューション(3.5フレームワーク)で使用されるプロジェクト(ログライブラリ)があります。

プロジェクトをビルドするときに両方のバージョンがビルドされるように、両方のターゲットを定義する方法はありますか?

また、誰かがこのようなものを実装し、ナゲット経由で配布していますか? nuget で両方のバージョンを公開する最善の方法は何ですか?

ありがとう

4

2 に答える 2

2

答えは<supportedRuntime>構成要素です。これにより、アプリケーションがサポートおよび実行できるすべての .NET ランタイムを指定できます。もちろん、アプリケーションでは、選択したすべてのバージョンの .NET フレームワークが提供する機能のみを使用できます。

要するに、これを構成に含める必要があります。

<configuration>
  <startup>
    <supportedRuntime version="v2.0.50727"/>
    <supportedRuntime version="v4.0"/>
  </startup>
</configuration>

<supportedRuntime>バージョンを下げるのではなく上げることができるように、最初はアプリケーションのターゲットを .NET 3.5 にする必要があるかもしれません。

于 2012-06-26T16:26:16.940 に答える
1

2 つの C# プロジェクト (csproj ファイル) を作成して、同じソース ファイル (構造によっては複数のプロジェクト) を含めることができます。1 つのプロジェクトは .NET 3.5 をターゲットとし、もう 1 つのプロジェクトは .NET 4.0 をターゲットにする必要があります。

.NET 4.0 に固有の機能を使用する場合は、.NET 4 プロジェクトで定義された条件付きコンパイル シンボルを使用して実行できます。

オプションで、それぞれが C# プロジェクトの 1 つを使用して、1 つ以上のソリューション (VS2008 および VS2010 用) を追加することもできます。

于 2012-06-26T14:52:02.843 に答える