nuget如何检测框架版本?

时间:2014-11-20 12:33:42

标签: visual-studio-2013 nuget .net-framework-version

我的nuget包有dll:s用于不同的.Net框架版本。一个用于CLR2,一个用于CLR4。

net20/mylibrary.dll
net40/mylibrary.dll

当我在例如使用包时,这可以正常工作.Net 3.5和.Net 4项目。

有时我的项目可以同时使用.Net 3.5和.Net 4.这是通过2个项目配置来处理的。在一种情况下,我从“Debug”配置构建.Net 4版本,从“Release”配置构建.Net 3.5版本。这两种配置都需要使用net20个引用。

我的csproj文件如下所示:

<PropertyGroup>
    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
    ...
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
    ...
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
    ...
</PropertyGroup>

nuget将始终安装打破“Release”版本的net40程序集。

目前,我在安装/更新后手动将net40更改为。{csproj文件中的net20。有没有办法避免编辑?

1 个答案:

答案 0 :(得分:0)

为.net 4创建一个单独的项目并将文件链接到其中。