混合框架NuGet包是否可以依赖于仅支持.NET 4的NuGet包?

时间:2012-02-29 15:50:02

标签: .net nuget

背景 我维护了我的组织中各种应用程序和Web服务使用的几个“框架”DLL,并将它们部署为NuGet包。一些消费者使用.NET 4,其他消费者使用.NET 3.5,因此大多数这些框架DLL都是.NET 3.5以实现最大兼容性。但是,有一些需要.NET 4.0,所以我只将它们包含在我的NuGet包的lib / net40文件夹中。

我最近将一些与Entity Framework相关的代码添加到其中一个.NET 4库中,因此理论上我应该将NuGet依赖项添加到Entity Framework包中。但是,Entity Framework NuGet包仅适用于.NET 4.0,所以我怀疑如果我这样做,那么我就破坏了我的.NET 3.5消费者。我该怎么办?

2 个答案:

答案 0 :(得分:2)

如果不制作多个套餐,今天就无法做到这一点。我们(NuGet团队)计划在1.8中添加特定于目标框架的依赖项,这将允许您在目标框架是.NET 4时指定将EF安装为依赖

答案 1 :(得分:0)

据我所知,你唯一真正的选择是把它分成两个包,一个用于EF,一个用于没有。

我建议在http://nuget.codeplex.com/

添加版本感知依赖项作为建议