繁体   English   中英

嵌入vs引用我的依赖项:.NET / NuGet包的最佳实践?

[英]Embed vs reference my dependencies: Best practices for .NET/NuGet package?

我正在为我公司内的客户提供一个C#/ .NET类库作为NuGet包。 我的库依赖于其他一些第三方库(例如Newtonsoft的优秀Json.NET )。

我假设NuGet的标准方式是我的包只包含我依赖的其他NuGet包的引用 客户端的Developer Studio将在他们的项目中安装我的NuGet包时自动下载它们。

问题#1:

我可以确定Developer Studio会下载我正在构建的那些NuGet包的版本而不是“最新”版本吗?

问题2:

如果他们的项目也使用我正在使用的第三方库(如Json.NET),它会导致问题吗,特别是如果他们使用的是不同的版本? 这“只是工作”,还是我需要对此做些什么?

如果在某处拼写出来,请道歉,但我无法找到这些问题的具体答案。

这在Nuspec Reference中有明确规定

特别:

指定依赖关系

从版本2.0开始,可以指定包依赖性根据目标项目的框架配置文件而变化。 该元素包含一组元素。 每个组包含零个或多个元素和目标框架属性。 如果目标框架与项目的框架配置文件兼容,则组中的所有依赖项将一起安装。

  <dependencies> <group> <dependency id="RouteMagic" version="1.1.0" /> </group> <group targetFramework="net40"> <dependency id="jQuery" /> <dependency id="WebActivator" /> </group> <group targetFramework="sl30"> </group> </dependencies> 

版本是:

作为依赖项可接受的版本范围。 通常,这只是表示最低版本的版本号。 但是,支持更明确的版本范围语法

更新 :更新的nuget版本的更新参考)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM