背景 我维护了我的组织中各种应用程序和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消费者。我该怎么办?
答案 0 :(得分:2)
如果不制作多个套餐,今天就无法做到这一点。我们(NuGet团队)计划在1.8中添加特定于目标框架的依赖项,这将允许您在目标框架是.NET 4时指定将EF安装为依赖仅。
答案 1 :(得分:0)
据我所知,你唯一真正的选择是把它分成两个包,一个用于EF,一个用于没有。
添加版本感知依赖项作为建议