加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Nuget:指定依赖项而不添加引用

发布时间:2020-12-13 20:10:11 所属栏目:百科 来源:网络整理
导读:我有一个包(比如,MyStuff.Data)需要EntityFramework(和其他)才能工作,但只能在内部工作.我不希望每个使用MyStuff.Data的项目也引用EntityFramework(以及所有其他项目),但是dll总是需要存在. 有没有什么方法可以添加EntityFramework作为MyStuff.Data的依赖项(
我有一个包(比如,MyStuff.Data)需要EntityFramework(和其他)才能工作,但只能在内部工作.我不希望每个使用MyStuff.Data的项目也引用EntityFramework(以及所有其他项目),但是dll总是需要存在.

有没有什么方法可以添加EntityFramework作为MyStuff.Data的依赖项(以便它在packages文件夹中获取EntityFramework.dll),但是没有引用添加到每个消耗它的项目中?

不,那里没有.一个选项可能是嵌入EntityFramework dll并将其发送到您自己的包中,并明确说明在安装期间应在目标项目中添加哪些引用.您可以使用包的nuspec中的元数据元素指定它.更多信息可以在这里的文档中找到:
http://docs.nuget.org/docs/reference/nuspec-reference#Specifying_Explicit_Assembly_References

请注意,嵌入特定版本的依赖项是对所有消费者的限制约束,这意味着您作为包生产者将推动您的消费者可以使用哪个版本的EF …这不是一个好的情况.

您最好尝试抽象出任何非受控(EF)依赖关系,并将真正的实现选择留给使用者(或者您提供包含实现的单独包,因此您的消费者仍然可以选择加入并使用您的实现).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读