题外话

从前有座山,山上有座庙,庙里有个老和尚。阿阿阿,好多鱼好多余。

什么是Nuget

NuGet(发音:New-Get)是一个Visual Studio的扩展。在使用Visual Studio开发基于.NET Framework的应用时,NuGet能够令你在项目中添加、移除和更新引用的工作变得更加快捷方便。我已经忘了我不是介绍这些概念的,请点这里,或者这里这里,或者可以看看《ASP.NET MVC4 高级编程(第四版)》的第十章。请了解这些概念后,再来把你的世界变的美好吧。

安装别人家的包

别人家的老公总是好的。在这个世界里,你伸出你的善良的手,就会从别人那得到更多,所以,在开源的世界里,我们甚至可以不用伸手就可以从别人那获得到许多,感谢伟大的人民。据说,NuGet官网都开源了,据他们自己说用到了好多别人家的NuGet包,都是精华哦,感兴趣可以去看看

安装别人家的包有两种基本方式:
1、图形化界面安装。步骤:打开VS,点“工具”——“库程序包管理器”——“管理解决方案的NuGet程序包”,之后你应该会的哦。
2、控制台界面安装(程序猿的最爱)。步骤:打开VS,点“工具”——“库程序包管理器”——“程序包管理器控制台”,在下边敲代码去吧。


享用别人的成果就是如此的简单,更多等你去发现并折腾。

打自己NuGet包

其实媳妇儿还是自己的好。人活一辈子,是从0到0的过程,中间我们会不会经过1取决与我们自己,想走向1的话就开始打自己的NuGet包吧。
用到的工具有两个(任选其一):
1、NuGet.exe
2、NuGetPackageExplorer
我使用的是最简单的一种,也就是第二种的图形化界面。首先,下载安装过成功后,也就是看到桌面多个一个图标后双击打开,然后编辑自己的包信息等等,我不啰嗦了,不懂看这里这里;然后,把自己要打包的dll、文件、tools等放到界面右侧的Package Content那里,Ctrl+S 保存就好了。大概就是这样

发布自己的NuGet包包

发布其实就是分享,很简单的逻辑,肯定要有托管的平台在。有多种方式可供选择:你的NuGet的包可以放到本地磁盘上,路径是支持的;自己搭建一个FTP也是可行的;搞一个自己网站服务器也是可以的,这里都有现成的;最好的方式是发布到NuGet.org上边,对大家都好。
其实发布也是两种方式,还是说最简单的界面版本,并发布到NuGet官网。
1、注册帐号,得到API Key。
2、在NuGetPackageExplorer菜单栏上点击“FILE”——“Publish”,填入Key。
3、提交。报错是因为包名已经存在了,换个不存在的就好。
或者你选择登上他们的网站去上传也是可以的。

Enjoy 美好

赶快去享受这些美好吧。技术使我们的生活变得越来越美好!
说了晚安,就要睡觉了。

NuGet 让你都美好的PM的更多相关文章

  1. 封装WebAPI客户端,附赠Nuget打包上传VS拓展工具

    一.前言 上篇< WebAPI使用多个xml文件生成帮助文档 >有提到为什么会出现基于多个xml文件生成帮助文档的解决方案,因为定义的模型可能的用处有: 1:单元测试 2:其他项目引用(可 ...

  2. 如果做好测试PM【转载】

    本文来源于:https://yq.aliyun.com/articles/14578?spm=5176.100238.yqhn2.14.Lcie4Y   摘要今年整体带了几个项目.我本人不是专业的PM ...

  3. PM 时钟机制

    PM 时钟机制 10.1 Minix3 PM 时钟机制概述在 MINIX3 中,除了前面所讲到的 CLOCK 时钟,在 pm 中也是维持了一个时钟, 我们暂且不分析为啥要这么做,我就分析是怎么实现这个 ...

  4. 在解决方案中所使用 NuGet 管理软件包依赖

    使用程序包恢复功能可以在提交源代码时, 不需要将代码库提交到源代码管理中,大幅减少项目的尺寸.所有NuGet程序包都存储在解决方案的Packages文件夹中. 要启用程序包恢复功能,可右键单击解决方案 ...

  5. 我眼中的PM

    我眼中的PM 1 我眼中的PM 1.1 人云“一个管理,半个专家”,我说“一个管理,两个专家” 如今,我发现我们不得不面对这样一个现实——角色兼职.我习惯上把项目分为三类:性命攸关的项目(涉及到人身安 ...

  6. PM真的不是PM

    上周写了一篇<PM意识2.0>,前同事老A留言给我说:“PM已死!”一句话勾起很多回忆啊~当年,我们在一家内资IT公司,我是质量总监,他是研发总监,带四五个PM.老A负责所有项目的计划和监 ...

  7. 如何创建一个基于 MSBuild Task 的跨平台的 NuGet 工具包

    MSBuild 的 Task 为我们扩展项目的编译过程提供了强大的扩展性,它使得我们可以用 C# 语言编写扩展:利用这种扩展性,我们可以为我们的项目定制一部分的编译细节.NuGet 为我们提供了一种自 ...

  8. 项目文件中的已知 NuGet 属性(使用这些属性,创建 NuGet 包就可以不需要 nuspec 文件啦)

    知道了 csproj 文件中的一些常用 NuGet 属性,创建 NuGet 包时就可以充分发挥新 Sdk 自动生成 NuGet 包的优势,不需要 nuspec 文件啦.(毕竟 nuspec 文件没有 ...

  9. 【工作感悟】——揭开“PM”的面纱

    [前言] 上次跟大家分享了面试的故事,小编觉得效果还不错,因此小编决定把工作感悟系列写下去,不过时间就不好说了.希望小伙伴们在评论列表中发表自己的看法和观点,积极参与啦~~ [背景] 初来Y公司,作为 ...

随机推荐

  1. spring boot注解之@Scheduled定时任务实现

    java实现定时任务一般使用timer,或者使用quartz组件.现在在spring boot提供了更加方便的实现方式. spring boot已经集成了定时任务.使用@Secheduled注解. @ ...

  2. centos7开启3306端口,liunx查看防火墙是否开启

    Can't connect to MySQL server on localhost (10061)这个就属于下面要说的情况 启动服务 systemctl start mariadb.service ...

  3. [Aaronyang] 写给自己的WPF4.5 笔记18[几何图形*Geometry图文并茂讲解]

    为什么要掌握?因为WPF 3D知识很多与它Geometry对比,所以我要系统学一下. --学会用Geometry给Path的Data属性填充. 图形可以转换成路径,Path的值,当然你也可以直接使用R ...

  4. [LeetCode] Range Sum Query - Immutable & Range Sum Query 2D - Immutable

    Range Sum Query - Immutable Given an integer array nums, find the sum of the elements between indice ...

  5. Swift中的富文本注释格式

    Apple当前启用了Markup语法形式的富文本注释格式,并且为此列出了官方文档,可以参考此链接:https://developer.apple.com/library/ios/documentati ...

  6. C++ STL 学习 :for_each与仿函数(functor)

    简单来将,仿函数(functor)就是一个重载了"()"运算符的struct或class,利用对象支持operator()的特性,来达到模拟函数调用效果的技术. 我们平时对一个集合 ...

  7. A Simple MVVM Example[Forward]

    In my opinion, if you are using WPF or Silverlight you should be using the MVVM design pattern. It i ...

  8. C# 调用系统winmm.dll 播放音乐wav mp3

    using System.Runtime.InteropServices;//放wav public partial class frmMain : Form { 系统放 播放音乐 wav mp3 [ ...

  9. 在android studio中导入github下载的工程

    1.从Github中下载工程压缩包,并将其解压到本地 2.修改文件 假设,解压后的文件目录如下: (1)修改配置文件  xx\build.gradle // Top-level build file ...

  10. js 判断微信浏览器

    上周接到个需求,需求是这样的:用户扫一扫二维码会产生一个链接,该链接会向后端发送个请求,返回一个 apk 的下载地址,用户点击下载按钮可以下载此 apk.然后就发生了问题,经过测试,发现用微信扫一扫打 ...