前言

最近看到园子上有关于NuGet (读音:new get)的使用,所以心血来潮也跟着学习做了一下,觉得很流b哦。于是也就记一下自己的学习心得(并非一味的重复轮子,只是觉得他人做的写的就是对的,自己做出来了,验证了才是真理)。以下就是学习的知识点总结:

一、NuGet的安装和使用公共包

1)、安装:在vs中选择【工具】---【扩展和更新】---安装NuGet程序管理包

2)、通过NuGet使用公共包

这是经常会用到的。例如使用NLog包来做日志记录管理,我们可以使用两种方式去引用NLog.dll

a、网上下载对应版本的dll,直接引用;(这个与Nuget无关)

b、使用NuGet获取:右键点击程序项目文件---【管理NuGet程序包】---查询NLog进行安装。

安装成功后,你会发现,程序中已经添加了NLog的引用,同时,在解决方案文件夹下可以找到关于NLog的不同版本的我文件

另:也可以通过对NuGet对已经管理的包进行更新操作(与安装包类似,此处略)。

二、通过NuGet对自己发布包的管理

1、建好自己的包,也就是程序集项目。

2、下载NuGet.exe,并执行nuget pack “自己的包”。注意:如果需要NuGet能够在任意文件夹下运行,需设定环境变量。

例如:

nuget pack ..\CommonCollection.Base.csproj -Build -Properties Configuration=Release

运行完语句后,会得到 CommonCollection.Base.1.0.nupkg 文件

3、创建一个Web空项目

4、通过NuGet添加NetGet.Server的安装,安装成功后,web空项目会自动添加多个文件

5、将2中得到的.nupkg文件和包对应的生成的dll、 pdb文件复制到Package文件夹下。如下图

运行web程序,转到Packages目录下

这样你就可以确定程序没有问题了。接下来就是发布了。

6、发布(与发布网站一样,略)

显示界面与5中运行时是一致的。

7、添加程序包源,【工具】--【选项】---【程序包源】---新建包源,源地址为6中网站地址

8、使用管理自己的包

这样就完成比较基本的管理了。

三、附:

1、注意.nupkg的生成和存放位置;

2、通过nuget管理包是注意包的版本与程序的兼容性,不应该随意更新。

3、我只能在.net framework4.5上去创建web,通过安装nuget.server创建nuget服务,4.0则不可行,提示nuget.core版本问题,很是郁闷。

另外:还有很多需要学习的东西,例如包版本的管理,如何通过批处理一键式操作,如何实现通过nuget分享自己的包等等。时间匆匆,等有时间再深入研究吧。

Ok! that's it!

Nuget的使用的更多相关文章

  1. NuGet镜像上线试运行

    为解决国内访问NuGet服务器速度不稳定的问题,我们用阿里云服务器搭建了一个NuGet镜像,目前已上线试运行. 使用NuGet镜像源的方法如下: 1)NuGet镜像源地址:https://nuget. ...

  2. 通过ProGet搭建一个内部的Nuget服务器

    .NET Core项目完全使用Nuget 管理组件之间的依赖关系,Nuget已经成为.NET 生态系统中不可或缺的一个组件,从项目角度,将项目中各种组件的引用统统交给NuGet,添加组件/删除组件/以 ...

  3. .NET Core 系列5 :使用 Nuget打包类库

    NuGet是个开源项目,项目包括 NuGet VS插件/NuGet Explorer/NuGetServer/NuGet命令行等项目,.NET Core项目完全使用Nuget 管理组件之间的依赖关系, ...

  4. 如何在nuget上传自己的包+搭建自己公司的NuGet服务器(新方法)

    运维相关:http://www.cnblogs.com/dunitian/p/4822808.html#iis 先注册一个nuget账号https://www.nuget.org/ 下载并安装一下Nu ...

  5. 简单搭建 nuget 内部服务器

    搭建 nuget 内部服务器,最好的方式是使用 ProGet,参考博文<用 ProGet 搭建内部的 NuGet 服务器>,好处非常多,但需要使用 SQL Server 数据库,如果不想使 ...

  6. VS项目中使用Nuget还原包后编译生产还一直报错?

    Nuget官网下载Nuget项目包的命令地址:https://www.nuget.org/packages 今天就遇到一个比较奇葩的问题,折腾了很久终于搞定了: 问题是这样的:我的解决方案原本是好好的 ...

  7. nuget常用命令

    nuget命令的用法: 一.安装 1.安装指定版本类库install-package <程序包名> -version <版本号> 2.安装到指定的项目install-packa ...

  8. 用ProGet搭建内部的NuGet服务器

    最近团队内部用的一个很简陋的NuGet服务器出问题了,nuget push发包,客户端显示发布成功,服务器上就是没有.懶得再去排查这个问题,早就想换掉这个过于简陋的NuGet服务器,借此机会直接弃旧迎 ...

  9. 用命令行工具创建 NuGet 程序包

    NuGet.exe 下载地址 本文翻译自: https://docs.nuget.org/Create/Creating-and-Publishing-a-Package https://docs.n ...

  10. 搭建自己的Nuget服务器

    序言 你们公司有没有好多项目,有没有好多类库,你们的类库是在tfs中管理,还是svn或者github,又或者是各自为政版本类库随意使用? 那么你们使用者写类库的时候方便吗? 有没有更新下载,版本不一致 ...

随机推荐

  1. HDU 5066 Harry And Physical Teacher(物理题)

    HDU 5066 Harry And Physical Teacher 思路:利用物理里面的动量守恒公式.因为保证小车质量远大于小球.所以能够把小车质量当成无穷大带进去,得到答案为2 * v0 - v ...

  2. sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

    在使用Hibernate的J2EE项目中,莫名其妙出现如上错误,既不报错,也不运行不论什么输出測试代码,更不返回结果. 经过排查,在方法里面引用的实体类和其映射文件属性个数不一致. 改动一致后,即解决 ...

  3. C# WPF Datagrid的筛选

    public static void SearchResult(DataGrid dg,string condition) { #region string code = string.Empty; ...

  4. Matlab hermite

    保形分段三次hermite插值 % 这是MATLAB里面的pchip.m文件.这里把它的凝视改写成汉语,主要是想弄清楚它是怎么计算在节点处的导数的. function v = pchip(x,y,xx ...

  5. hihocoder第42周 3*N骨牌覆盖(状态dp+矩阵快速幂)

    http://hihocoder.com/contest/hiho42/problem/1 给定一个n,问我们3*n的矩阵有多少种覆盖的方法 第41周做的骨牌覆盖是2*n的,状态转移方程是dp[i] ...

  6. (hdu 7.1.8)Quoit Design(最低点——在n一个点,发现两点之间的最小距离)

    主题: Quoit Design Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) T ...

  7. d3d纹理参数

    D3DTEXTURESTAGESTATETYPE 纹理状态定义了一个多层次的复杂的操作质感.一些采样工作状态设置顶点,有些组像素操作. 纹理层次状态可以快速保存并返回状态. typedef enum ...

  8. Android源代码同步脚本(增加设置线程参数)

    #!/bin/sh #Filename: repo_sync.sh count= ret= ] do #输入参数1,用作同步的线程数 #如果什么参数都不输入,默认线程为4 #usage: ./repo ...

  9. 【UFLDL】多层神经网络

    请参见原始英文教程地址:http://ufldl.stanford.edu/tutorial/supervised/MultiLayerNeuralNetworks 本文是在学习该教程时记得笔记,供參 ...

  10. 用于编译cm-12.0 的 local_manifest.xml文件

    将代码保存为 romservice.xml文件 <?xml version="1.0" encoding="UTF-8"?> <manifes ...