• (转)介绍下Nuget在传统Asp.net项目中的使用


    转自http://www.cnblogs.com/n-pei/archive/2011/05/02/2034508.html

     

    最近学了不少NuGet的东西,也看了很多它的视频,特别是在MIX11上的视频。

    如果我们要在MIX11上评出一个明星的话,你可能会觉得是WP7,或者是SL5,那么你肯定错了,明星肯定是NuGet。因为几乎每个微软演讲的人员都在用NuGet。为什么它会这么受大家欢迎??很简单,它提高了大家做事情得效率,而且使用起来轻松,简单。

     

    如果你去Google下nuget说明,你会发现结果如下:

    image

    基本上没都少文章,而且好多都是我写的那篇文章的转载,声明下,我不是臭美。。。就是觉得如果大家很多人有写它的使用,那么我就不用费劲再去写这些了。特别是很多人都是说明它如何在Asp.net MVC项目中的使用。其实在传统的Asp.net项目中同样好用。

      关于NuGet的基本介绍你可以按我上图给的搜索去找我写的文章,我就不给link了。

     

    在进行练习之前,我们先创建一个空的asp.net解决方案,(不是MVC Smile)

     

     

    1.添加第三方代码包的使用

    传统的添加dll方式,就是下载,解压,然后找到需要添加到项目中的dll,接着添加引用,使用NuGet添加dll就比较简单,首先你可以去Nuget.org去查找是否有你要添加的第三方软件包,例如我们要添加elmah:

    image

    使用Package Manager Console来添加Elmah。

    image

     

    除了添加dll,我们也可以添加别的文件,例如我现在创建的是一个空的asp.net解决方案,那么在web工程中我想把jQuery添加进来,项目模板中自带的是1.4的,我想用1.5怎么办呢??直接使用Install-Package Elmah就行了

    image

     

    现在去写jquery的脚本,你发现没有智能提示,别急,可以使用 Install-Package jquery.vsdoc来安装最新的智能提示包。。

     

     

    2.如何创建本地引用

    创建本地引用比较简单了,例如,我们刚才已经添加了几个安装包,那么你可以在解决方案下看到一个Packages文件夹。本地引用我们就使用它吧。

    点击下图所示按钮,进入Setting页面,

    image

     

    添加一个名字为LocalFeed的本地包源。路径指向上面所说的那个packages文件夹:

    image

     

     

    在Package Resource中找LocalFeed:

    image

     

    你可以把这个路径指向任何一个存放nuget 包的地方。。。。。

     

     

    3.创建自己公司的NuGet Server.

    上面那个方式是使用本地的资源包方式,那么如果是一个大的公司,或者说你公司会提供一个服务器来为你们存放内部的公用dll,传统的大家添加这些公用的dll方式就是从SVN或者其他源码管理工具上拿,也是需要先找到,然后去download,再添加引用进来。

    如果有dll进行了更新,其他各个项目组都需要用新的dll,大家都得重复性的下载,添加引用,甚至还得删除掉原来的dll。。。。

    这时候创建本地的nuget server就显得有必要了。

    如何创建呢???????????????????

     

    首先也是创建一个空的asp.net的项目:

    image

     

    说再安装下Nuget.Server这个包,在nuget官方提供的Feed上就有它。

    image

     

    安装好以后,在Packages文件夹下放几个nuget的包,然后访问default.aspx:

    image

     

    在Packages页面你可以看到包含的nuget包,nuget是OData形式的ATOM Feed。如下图:

    image

     

     

    按照第2点中介绍的把http://localhost:55326/nuget/添加到你的nuget源:

    image

     

    现在就可以把你们公司共用的dll打包成nuget的包,然后放到这个网站的Packages目录下了。

    上面一直介绍NuGet的feed如何自己创建,那么公司内部如何打包nuget呢????

    4.如何把代码打包成Nuget包

    首先需要去codeplex上下载nuget command line:

    image

     

    这玩意可是打包利器啊,教大家两种打包方式:

    a.直接通过工程文件打包dll:

    创建一个类库,然后编译下。把刚才下载的nuget.exe拷贝到工程文件所在的文件夹中:

    image

     

    通过命令行来创建nuget包:

    image

    搞定了:

     

    image

     

    B:使用nuget的spec文件进行打包:

    首先你得创建一个nuget的.spec文件:

    image

     

    在工程中编辑刚才创建的spec文件:

    image

     

    你可以编辑nuget包的信息,比如作者,版本等等。。。

    image

     

    另外你也可以在打包时创建两个文件夹,一个是content,一个是tools文件夹。

    5.NuGet的高级应用(Scaffold的扩展)

    这个部分会是结合powershell和t4模板来一起通过一个类来自动创建增删改查的例子。我准备把源代码放到codeplex上。

     

    代码和介绍说明我下周在公司和大家分享nuget后,再把文章和代码已经ppt补上。。。。。。

     

    如果你对NuGet感兴趣,可以关注下我,到时候可以随时看到文章更新。Smile

  • 相关阅读:
    28_基于FPGA的简易电子密码锁
    AD设置PCB线宽线距过孔规则设置
    18_基于FPGA的VGA显示控制
    FPGA驱动ILI9341 TFT液晶显示指南
    risc_v介绍
    altium designer设置原理图大小
    19_基于FPGA驱动LCD12864显示字符
    20_基于FPGA驱动LCD12864显示图片
    27_基于FPGA的误码检测仪
    FPGA驱动ILI9325 TFT模块液晶显示指南
  • 原文地址:https://www.cnblogs.com/JustRun1983/p/2672228.html
Copyright © 2020-2023  润新知