题外话

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

什么是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. 求二叉树的深度和宽度[Java]

    这个是常见的对二叉树的操作.总结一下: 设节点的数据结构,如下: class TreeNode { char val; TreeNode left = null; TreeNode right = n ...

  2. Spring 整合 Flex (BlazeDS)无法从as对象 到 Java对象转换的异常:org.springframework.beans.ConversionNotSupportedException: Failed to convert property value of type 'java.util.Date' to required type 'java.sql.Timestamp' for property 'wfsj'; nested exception is java.lang.Ill

    异常信息如下: org.springframework.beans.ConversionNotSupportedException: Failed to convert property value ...

  3. Android按键之Menu详解

    Android手机一般都有三个键,返回键.Home键.菜单键: Android系统的菜单支持主要通过4个接口来实现. 从上图可以看出Menu是一个父类接口,它下面有两个子类一个是ContextMenu ...

  4. [leetcode] Min Stack @ Python

    原题地址:https://oj.leetcode.com/problems/min-stack/ 解题思路:开辟两个栈,一个栈是普通的栈,一个栈用来维护最小值的队列. 代码: class MinSta ...

  5. Base: 一种 Acid 的替代方案

    原文链接: BASE: An Acid Alternative Pdf下载链接: Base 数据库 ACID,都不陌生:原子性.一致性.隔离性和持久性,这在单台服务器就能搞定的时代,很容易实现,但是到 ...

  6. ATA/SATA/SCSI/SAS/FC总线简介

    ATA/SATA/SCSI/SAS/FC 都是应用于存储领域的总线,在当今的存储系统中,普遍应用的硬盘接口主要有 SATA . SCSI . SAS 和FC , ATA 比较古老,在一些老的低端存储系 ...

  7. 通过PowerShell获取TCP响应(类Telnet)

    通常情况下,为了检测指定的TCP端口是否存活,我们都是通过telnet指定的端口看是否有响应来确定,然而默认情况下win8以后的系统默认是不安装telnet的.设想一下如果你黑进了一个服务器,上面没装 ...

  8. c# 垮线程调用控件

    http://www.cnblogs.com/TankXiao/p/3348292.html

  9. C primer plus 练习题 第五章

    1. #include <stdio.h> #define MINU 60 int main() { int minute, hour, m; printf("请输入分钟:&qu ...

  10. 关于Interface忽然想到的

    其实Interface,顾名思义,就是2个事物的"界面",interface衔接了2个事物,这两个事物,往往一方比较"多变",而另一方我们又不太希望它相对&qu ...