Nuget介绍

官网定义:NuGet是.NET的软件包管理器(免费)。NuGet客户端工具提供了生成和使用软件包的能力。NuGet Gallery 是所有软件包作者和消费者都使用的中央软件包存储库。

简单来说,nuget包解决了dll引用的问题,开发者可以通过打包,然后发布到公有主机或者私有主机上,供其他开发者使用。可以大大的提高创建一个.NET应用的效率。

想了解平时安装的nuget包,是如何产生的。需要了解几个角色。

  • 创建者:包的作者,创建一个项目,最终生成一个后缀名为.nupkg的文件,里面包含了编译代码DLL、与该代码相关的其他文件以及描述清单如版本等信息。
  • Host 主机:nuget.org 作为公共主机,如果你也想发布一个包,供所有开发者使用的话,可以选择它。NuGet 自身负责在 nuget.org 中维护包含 100,000 多个唯一包的中央存储库。这些包每天供数以百万的 .NET/.Net Core 开发人员使用。私有主机上,比如团队内部几个人可以访问。
  • 消费者:很好理解,就是我们从nuget获取包的开发者。

简单的总结下这几个角色的关系:创建者创建一个nuget包,并发布到主机上。然后使用者在可访问的主机上搜索安装nuget包到项目中,

NuGet的设置

右键“项目”选择属性。点击打包 设置版本

生成NuGet包

右击”项目“ 打包,生成“NuGetTestllxd.1.0.1-bate3.nupkg”

发布NuGet包的有两种方式,

一种通过NuGet官方网站直接上传:https://www.nuget.org/packages/manage/upload

第二种是通过CLI 命令行 push:dotnet nuget push NuGetTest.1.0.0-pre.nupkg -k API -s https://api.nuget.org/v3/index.json

API:注册账户,申请一个。

https://api.nuget.org/v3/index.json:这个是固定不变的。此文档称为 服务索引

该 API 的入口点是众所周知的位置中的 JSON 文档。  Nuget.org 的服务索引的位置为 https://api.nuget.org/v3/index.json

此 JSON 文档包含资源列表,这些 资源 提供不同的功能并实现不同的用例。

支持 API 的客户端应接受一个或多个服务索引 URL 作为连接到相应包源的方法。

右击”项目“ 打包,生成“NuGetTestllxd.1.0.1-bate3.nupkg”,将它复制到单独的“新建文件夹” ,然后在文件的路径栏中输入cmd 调出命令行。在命令行(CLI)执行push命令

在路径栏中输入cmd 回车,调出路径栏,这是这时候cmd直接切换到当前路径

nuget发布非正式版本/预览版本

https://docs.microsoft.com/zh-cn/nuget/create-packages/prerelease-packages

预发布版本:https://docs.microsoft.com/zh-cn/nuget/concepts/package-versioning#pre-release-versions

vs2019中使用 NuGet包

最新文章

  1. php多进程刷票
  2. MongoDB与Mysql常用命令解释
  3. 为什么web标准中无法设置IE浏览器滚动条颜色了?
  4. MAC 环境下初始化mysql root 密码
  5. ThinkPHP3.2 加载过程(三)
  6. iOS:翻页效果
  7. ASP.NET MVC3 系列教程 – 新的Layout布局系统
  8. PHP基础示例:商品信息管理系统v1.1
  9. 大话设计模式C++达到-文章12章-外观模式
  10. SQL 将URL编码转汉字!
  11. mysql revise
  12. LeetCode之“散列表”:Contains Duplicate && Contains Duplicate II
  13. Ruby类
  14. NI Vision ClampRake修改
  15. 修改构造器默认prototype后,新实例的constructor指向问题和解决办法
  16. Dos 批处理 Shutdown
  17. mysql用户创建与授权
  18. select * from v$reserved_words
  19. css给奇数行或偶数行添加指定样式
  20. U盘安装centOS和下载地址

热门文章

  1. centos6.6手动安装mysql5.5并配置主从同步
  2. 在Django中使用zerorpc
  3. golang中gomodule讲解
  4. 网络支持IPV6地址测试校验与思考
  5. 使用 Dapr 缩短软件开发周期
  6. Python 修改AD密码
  7. python利用正则表达式提取文本中特定内容
  8. Kubernetes之日志和监控(十五)
  9. 「JOISC 2014 Day1」巴士走读
  10. IO复习