为什么要使用控制台管理程序包而不使用程序包管理窗口?原因大家都懂,生活压力这么大,一切都只是为了装一波。开个玩笑,当然不只是此原因,在有些情况下,有些操作使用程序包管理窗口不能达到目的,只能使用控制台命令才能实现,比如说,安装特定版本的程序包。
控制台命令窗口
在安装有NuGet插件的VS上打开NuGet命令窗口的过程如下:依次选择菜单Tools(工具)->Library Package Manager(库程序包管理器)->Pakcage Manager Console(程序包管理器控制台)。
  • 程序包源:此下拉框可以选择要使用程序包源,默认选中 NuGet官方程序包源,当然你可以切换为自己公司内部使用的程序包源。
  • 默认项目:选择你想在哪个项目使用命令来工作,默认会自动选择第一个项目。
在使用控制台命令的过程中,很多命令的语法不需要硬背,可以随时使用get-help命令来查看帮助。

常用命令
  • Get-Package

可以使用Get-Package -ListAvailable来查看当前程序包源所有可用的程序包。

使用上述命令从NuGet官方程序包源中会获取到成千上万个程序包,如果想要查询特定的程序包,可以使用-Filter参数来进行过滤,如果我需要查找Common.Loggin程序包,那么可以使用Get-Package -ListAvailable -Filter Common.Logging (程序包名称或关键字)来进行查找,在NuGet 3.0+版本中,可以使用Find-Package命令来替换Get-Package命令。
如果不带任何参数,则可以查看当前解决方案已安装程序包列表:
  • Install-Package
当你使用Get-Package命令找到你想要安装的程序包之后,可以使用Install-Package packagename命令来安装程序包。比如使用Install-Pakcage Common.Logging来安装通用日志程序包:
NuGet在安装程序包的时候,会从指定的程序包源进行查找,同时会安装到选择的项目中(除非你使用参数另外指定)。程序包文件会下载到本地解决方案的packages目录下,同时,项目的app.config或web.config也有可能被更改。
如果要安装的程序包依赖于其他程序包,NuGet会同时下载并安装其所依赖的程序包。
  • Uninstall-Package
使用Uninstall-Package packagename可以移除当前选择项目的指定程序包。比如,Uninstall-Pakcage Common.Logging移除当前项目引用的Common.Logging程序包。
使用上述命令达到的结果:
  1. 项目引用:在解决方案资源管理器中,项目引用中的Common.Logging引用被删除
  1. packages目录:解决方案文件夹根目录下的packages目录下的Common.Logging文件夹被删除,如果packages下只有这一个目录,那么packages目录也将同时被删除;
  2. 配置文件:app.config或web.config文件中的更改被删除;
  • Update-Package
可以使用Get-Package -updates命令来查看当前已安装的程序包中是否有新版本可用:
如果想更新某个程序包,可以使用Update-Package packagename来更新指定程序包。
总结
本篇文章主要讲解了如何使用程序包控制台来进行简单的程序包管理,包括常用的查找、安装、删除及更新程序包功能。常用命令基本就是这么多,当然,本文对各个命令的应用只是其基本用法而已,如果需要更深层次的应用,可以使用Get-Help commandname来查看每个命令的详细用法,也可以直接查看官方说明文档
参考资料:

NuGet -- 使用控制台管理程序包的更多相关文章

  1. NuGet之控制台管理程序包

        NuGet作为VS的扩展程序,已经做好了UI,我们可以通过Manage NuGet Packages 的对话框.这里我们主要说说如何通过控制台进行包管理.使用命令行的方式,其实也是有其好处,对 ...

  2. 用Nuget部署程序包

    用Nuget部署程序包 Nuget是.NET程序包管理工具(类似linux下的npm等),程序员可直接用简单的命令行(或VS)下载包.好处: (1)避免类库版本不一致带来的问题.GitHub是管理源代 ...

  3. 使用NuGet加载包,发现加载的dll都是最新版,原来少加了参数[-Version]

    使用NuGet获取AutoMapper 发现无法正确加载包,项目版本是3.5,获取的dll版本较高,查资料发现可以通过 “-Version” 指定加载包版本 http://www.mamicode.c ...

  4. [Visual Studio] NuGet发布自定义包(Library Package)

    源文章:dax.net http://www.cnblogs.com/daxnet/archive/2013/05/07/3064577.html 使用NuGet发布自己的类库包(Library Pa ...

  5. NetCore入门篇:(三)Net Core项目Nuget及Bower包管理

    一.创建项目 1.如何创建项目,参照上一篇文章 二.程序包介绍 1.Net Core的程序包分前后端两种,后端用nuget,前端用bower. 2.与Net 不同,Net Core引用nuget包时, ...

  6. [nuget]VS中包管理器打开后找不到其它工程的问题

    今天新建工程做小组内用的工具,打算做个winform的项目, 用vs新建了winform项目,简单分下层吧,又加了两个类库项目, 然后,要用到的包需要nuget安装,于是发生这个问题: [VS]在so ...

  7. NuGet安装本地包命令行

    尝试安装本地的NuGet包. 键入 "get-help NuGet" 可查看所有可用的 NuGet 命令. install-package Polly.Net40Async-Sig ...

  8. NuGet修改默认包保存的位置

    NuGet默认的全局包下载地址一般为:C:\Users\{username}\.nuget\packages 修改方法: <?xml version="1.0" encodi ...

  9. Anaconda系统中管理程序包(Package)

    列出所有已安装的程序包 conda list 在已安装的程序包中查找某个特定的程序包 conda search package-name 安装程序包 conda install beautiful-s ...

随机推荐

  1. 在Linux上进行QT UI开发

    在QT Creator UI编辑器上通过拖拽各种控件产生UI界面,然后点击编译/Build按钮,会自动生成对应的ui_xxxx.h的 头文件/header file. 参考: 1.Linux上使用Qt ...

  2. sgu 109 Magic of David Copperfield II

    这个题意一开始没弄明白,后来看的题解才知道这道题是怎么回事,这道题要是自己想难度很大…… 你一开始位于(1,1)这个点,你可以走k步,n <= k < 300,由于你是随机的走的, 所以你 ...

  3. HDOJ 1024 Max Sum Plus Plus -- 动态规划

    题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=1024 Problem Description Now I think you have got an ...

  4. 第12条:考虑实现Comparable接口

    CompareTo方法没有在Object中声明,它是Comparable接口中的唯一的方法,不但允许进行简单的等同性比较,而且允许执行顺序比较.类实现了Comparable接口,就表明它的实例具有内在 ...

  5. rpm方式安装gcc缺少依赖项的解决方法

    使用rpm方式安装gcc时,有时会报缺少依赖项: libmpfr.so.1 is needed by cpp-4.4.4-13.el6.i686 libppl.so.7 is needed by cl ...

  6. [C#]判断字符串中是否包含中文

    关键代码: /// <summary> /// 判断字符串中是否包含中文 /// </summary> /// <param name="str"&g ...

  7. 关于Angular.js Routing 的学习笔记(实现单页应用)

    最近开始学习angular.js,发现angular.js确实很方便,也很强大.在看到 AngularJS Routing and Multiple Views 这一部分的时候,有点乱.现在通过记录一 ...

  8. (转载)delphi checklistbox用法

    delphi checklistbox用法 在Delphi中checklistbox中高亮选中(不论是否Checked)能够进行操作么?删除,上下移动等等 删除:CheckListBox.Delete ...

  9. Monitor All SQL Queries in MySQL (alias mysql profiler)

    video from youtube: http://www.youtube.com/watch?v=79NWqv3aPRI one blog post: Monitor All SQL Querie ...

  10. 网站开启Gzip压缩-apache

    找到并打开apache/conf目录中的httpd.conf文件 httpd.conf中打开deflate_Module和headers_Module模块,具体做法为将 如下两句前面的#去掉: Loa ...