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. 弹出框 popover.js

    弹出框 popover.js 为任意元素添加一小块浮层,就像 iPad 上一样,用于存放非主要信息. 弹出框的标题和内容的长度都是零的话将永远不会被显示出来. 插件依赖 弹出框依赖 工具提示插件 ,因 ...

  2. SparkStreaming HA高可用性

    1.UpdateStateByKey.windows等有状态的操作时,自动进行checkpoint,必须设置checkpoint目录,数据保留一份在容错的文件系统中,一旦内存中的数据丢失,可以从文件系 ...

  3. Qt之去除窗口的标题栏、通过鼠标移动窗口

    设置标题栏图标,位置与大小示例 #include<QApplication> #include<QWidget> #include<QDebug> #include ...

  4. .netcore 图片处理

    .netcore 图片处理 /// <summary> /// 根据文件类型和文件名返回新路径 /// </summary> /// <param name=" ...

  5. openwrt python27库的选择和库的大小

    < > micropython................................................. Micro Python < > microp ...

  6. 使用单调队列维护决策三元组实现决策单调性优化DP的一些细节

    以[BZOJ2687]交与并为例给出代码. #include <bits/stdc++.h> #define rin(i,a,b) for(register int i=(a);i< ...

  7. el-input和和filter结合实现实时搜索

    <el-input placeholder="请选择日期" clearable prefix-icon="el-icon-search" v-model= ...

  8. Map循环/迭代/遍历效率、性能问题。

    项目开发完毕,为了找点事打发一下时间,于是用findBugs插件对当前完工的项目进行扫描,发现了很多问题.其中有个关于性能的问题,在这里记录一下. 提示信息为:Inefficient use of k ...

  9. vue中axios的封装(注意这里面异步的概念和用法十分重要)

    todo https://www.cnblogs.com/chaoyuehedy/p/9931146.html

  10. shell编程连接postgres数据库(数据备份)

    第一步:通过xshell或者其他工具连接到linux服务, 第二步:创建一个脚本:touch se.sh 第三步:输入i,代表开始输入内容 输入以下命令: 脚本如下:(sql语句可以是任何复杂的sql ...