NuGet的官方说明是:NuGet是一款Visual Studio的扩展,它可以简单的安装、升级开源库和工具。

官网地址:http://www.nuget.org/

官网最醒目的位置就是下载链接,安装完成后我们来快速体验一把。

手上有个小项目需要使用到json格式,一般情况我会先Google一下有没有相关的开源库(这个肯定是有的)。

然后从一些博文中发现了Json.net,然后继续Google之,找到Json.net的官网,然后下载最新的稳定版本,找出DLL文件引用它。

是不是很复杂?很繁琐?(其实没用NuGet之前我一直觉得这样干很方便的)

使用NuGet我们就可以很快搞定了。

右键Managet NuGet Packages

搜索json,然后看看结果和右侧的介绍,Json.net排在第一位,点Install安装。

然后等待下载完成,可以看到引用里面已经有了Json.net了。

那么NuGet到底干了什么呢?下载的开源库在何处呢?看一下输出结果就知道了。

在packages文件夹下可以找到相关dll文件。

还有命令行模式可以选用

还是以Json.net举例,输入Install-Package Newtonsoft.Json即可。

NuGet还有一个优势就是可以处理依赖(我个人觉得Net的依赖复杂程度没有java麻烦)。以Spring.Core为例子,它依赖Common.Logging。

自然NuGet完美解决了。

我没有试升级库功能,但是个人感觉NuGet还是有一些局限的。

首先需要联网(其实可以建立自己的服务器...我粗心了,谢谢了楼下各位了),其次是每次都下载新的,而且会把针对不同.Net版本的都down下来。

原文链接:http://www.cnblogs.com/htynkn/archive/2012/01/29/use_nuget_tools.html

善用VS2015 NuGet Manager解决方案管理功能

NuGet已经是Visual Studio写专案时的柴米油盐酱醋茶了,但有些人可能没发现在解决方案(.sln,Solution)层也可以开启NuGet Manager。如下图,在Solution Explorer的.sln开右键选单,有一个「Manage
NuGet Packages for Solution…」:

在解决方案开启NuGet Manager可以一次检视所有专案的Package安装状况,但在VS2013时代,这功能有点鸡肋。如以下例子,解决方案里总共有三个专案安装两种不同版本HelperSharp,于是NuGet
Manager的Package清单会看到两笔HelperSharp,点选其中一项,右侧则会显示它被安装在哪几个专案( Currently installed in projects),点下Manage钮可以批次移除。

Visual Studio 2015对NuGet Manager介面做了大幅改版,解决方案的套件管理介面变得更贴心好用。首先,同一套件的新旧版本被整合成单一项目,在右侧以清单方式呈现套件在各专案的安装状况,并直接显示安装的版本号码。如果你常常处理元件版本衡突,一定能了解这张汇总清单有多珍贵。:P

而处理元件版本冲突时,更新到最新版有时不是最佳解,降版牵就某些既有程式库反而比较省事。过去NuGet Manager UI只提供解除安装或升级到最新版,要安装特定版本需要使用命令列工具下指令。VS2015的NuGet
Manager安装套件时可由版本清单选取最新版或历史版本,还可透过勾选一次安装或更新多个专案,解决版本衡突一次到位。

身为三不五时要处理元件版本冲突的苦手,发现这个功能的当下,我仿佛看到Visual Studio开发人员对我说「你的痛苦,我懂!」XD 再次为地表最强的开发工具按个赞!

【VS开发】visual studio 2015的NuGet Manager解决方案管理功能的更多相关文章

  1. Visual Studio 2017无法加载Visual Studio 2015创建的SharePoint解决方案

    前几天安装了最新的Visual Studio 2017企业版,发现无法打开之前使用Visual Studio 2015创建的SharePoint 2016解决方案,提示"需要更新" ...

  2. 关闭Visual Studio 2015 关闭单击打开文件的功能

    工具-->选项-->环境-->选项卡和窗口-->预览选项卡 去掉“在解决方案资源管理器中预览选定的文件(在按住Alt的同时单击可避免预览)(X)”的勾选

  3. 解析Visual Studio 2015促进生产力的10个新功能

    1 性能提示 Performance Tips 当我们想知道执行一段代码所耗费的时间时,需要借助于.NET 框架的Stopwatch类,像下面这样: class Program { static vo ...

  4. 如何正确并完全安装Visual Studio 2015企业版本?

    http://blog.csdn.net/code_godfather/article/details/47381631  [简介] 常用网名: 猪头三 出生日期: 1981.XX.XX 个人网站: ...

  5. Visual Studio 2015 开发 ASP.NET 5 有何变化?

    本篇博文目录: ASP.NET 5 模版 ASP.NET 5 目录结构 前端管理工具 无编译开发 Microsoft Git Provider 智能感知和错误信息 Smart Unit Testing ...

  6. ASP.NET 5系列教程 (五):在Visual Studio 2015中使用Grunt、Bower开发Web程序

    基于Visual Studio 2015,你可以: 方便的管理前端包,如jQuery, Bootstrap, 或Angular. 自动运行任务,如LESS.JavaScript压缩.JSLint.Ja ...

  7. Visual Studio 2015 开发 ASP.NET 5 有何变化?(转)

    出处:http://www.cnblogs.com/xishuai/p/visual-studio-2015-preview-asp-net-5-change.html 本篇博文目录: ASP.NET ...

  8. Visual Studio 2015 开发 ASP.NET 5

    在以往微软发布或更新 Visual Studio 版本时,我们开发 ASP.NET 应用程序,带给我们的变化其实并不是很大,或者说你根本就感受不到变化,你感受到的只是下载安装了几个 G 的 Updat ...

  9. 使用Visual Studio 2015 开发ASP.NET MVC 5 项目部署到Mono/Jexus

    最新的Mono 4.4已经支持运行asp.net mvc5项目,有的同学听了这句话就兴高采烈的拿起Visual Studio 2015创建了一个mvc 5的项目,然后部署到Mono上,浏览下发现一堆错 ...

随机推荐

  1. 基于idea的maven(一)Maven的安装

    1.Maven前置依赖 检查电脑是是否安装java 2.下载maven 网址 www.apache.org 解压 maven 压缩包, 并创建相应的maven本地仓库的路径. 打开 conf文件夹中 ...

  2. Spring中的IOC和AOP

    一.IOC(DI) Inversion of Control 控制反转,也叫(Dependency Injection)依赖注入. 我们平常使用对象的时候,一般都是直接使用关键字类new一个对象,那这 ...

  3. spring boot 项目打包后无法通过命令行传入参数

    java -jar .\tk-provider.jar --spring.profiles.active=test 本想用测试环境的配置文件运行项目可项目启动时一直是使用dev配置文件运行. java ...

  4. Visual Stdio C++ 编译器、链接器常用命令

    概览: cmd常用命令配合使用: del 删除指定文件 同erase cls 清屏 rd 删除空目录文件夹 dir 显示目录 cd 在当前盘符跳转指定目录(不同盘符跳转用盘符号)(分别表示根目录 上一 ...

  5. 【PKUSC2019】线弦图【计数】【树形DP】【分治FFT】

    Description 定义线图为把无向图的边变成点,新图中点与点之间右边当且仅当它们对应的边在原图中有公共点,这样得到的图. 定义弦图为不存在一个长度大于3的纯环,纯环的定义是在环上任取两个不相邻的 ...

  6. QtQtConcurrent 使用方式

    说明:QtConcurrent 的线程函数启动方式略述. 1) 全局函数或静态函 ,作为线程函数 void threadFunc() { //...add } QtConcurrent::run(th ...

  7. [CSP-S模拟测试]:硬币(博弈论+DP+拓展域并查集)

    题目传送门(内部题135) 输入格式 第一行包含一个整数$T$,表示数据组数. 对于每组数据,第一行两个整数$h,w$,表示棋盘大小. 接下来$h$行,每行一个长度为$w$的字符串,每个位置由为$o, ...

  8. JSON格式标准

    JSON格式 json的基本类型有objects(dicts), arrays(lists), strings, numbers, booleans, and nulls(json中关键字).在一个o ...

  9. SpringBoot启动时的Banner设置

    Spring Boot程序启动的时候输出的由字符组成的Spring符号并不陌生.这个是Spring Boot为自己设计的Banner: 1. 第一种方式:修改的时候,进行设置,在Application ...

  10. git 指定自己的sshkey

    在服务器上生成ssh-key以后,需要把公钥放在github上,但是,这个公钥只能放在一个账户里,如果放在第二个账户里,就会提示这个key已经被用了,这是前提 一个可能的场景是这样的: 你们公司有好几 ...