这应该是一个简单的问题,但我似乎无法在任何地方找到答案。
我有一个项目,我正在建设.Net 3.5。我正在尝试将Newtonsoft JSON.Net作为参考,但NuGet正在安装一个为.Net 4.0构建的版本。这使我无法在不支持.Net 4.0的环境中使用我编译的程序集。
有没有办法配置NuGet,以确保引用不是在项目设置之外的.Net版本中构建的?
答案 0 :(得分:1)
也许您可以将此答案用于类似的问题:
Download old version of package with nuget
它表示您可以安装旧版本的软件包 您可以尝试安装与.NET Framework 3.5兼容的版本,它将被解决!
;)我希望这有帮助
答案 1 :(得分:1)
NuGet将使用项目的目标框架从NuGet包中选择正确的程序集。您无法覆盖此行为。
最新版本的Json.NET NuGet包(6.0.1)包含一个专门用于.NET 3.5的程序集,因此如果您的项目的目标框架为3.5,NuGet应自动选择该程序集。
将我的项目的目标框架更改为3.5会导致将以下元素添加到项目中:
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
NuGet使用它来确定要使用的程序集。
当Json.NET安装到此项目中时,将从packages \ Newtonsoft.Json.6.0.1 \ lib \ net35目录中引用Newtonsoft.Json.dll文件。该程序集面向.NET 3.5