【.NET】NuGet发布类库包,轻松管理dll文件

        大中型项目中总是有专门人员去开发和维护底层类库的,封装自己的类库不仅可以提高代码的复用度,减少开发量,使代码更简洁,还可以提高运行速度.但是,类库方法的增加与修改导致使用该类库的系统开发人员频繁地删除和添加引用.如果底层dll文件过多,任何一次变动都将导致高错误率的修改!!为了方便管理dll文件,我们使用NuGet动态更新的方式.

 

    如果您是类库的开发者与维护者,请阅读发布篇.如果您是基于类库的开发者,请阅读使用篇.

 

发布篇:


       (假设此时您已经开发好了一个类库.)

       1.下载NuGet.exe,并将它放到和.csproj文件在同一目录下.这个是打包用的好工具,它可将我们的工程文件打包.

下载地址:http://nuget.codeplex.com/downloads/get/669083

 

       2.NuGet官网注册一个账号,验证后可获得一个API Key.我们暂时管它叫my_api_key.

注册地址:https://www.nuget.org/ 

        然后设置API Key.

为防止出错建议使用 开始--VS2012--Visual Studio Tools--VS2012开发人员命令提示.

输入以下命令设置NuGet API Key:    nuget setApiKey <my_api_key>

       


         3.设置您的AssemblyInfo.cs文件中的属性版本等,第一次就使用1.0.0.0.保存设置并编译整个项目.

 

        4.在命令提示符下,进入.csproj文件所在目录,运行nuget spec 命令,将生成.nuspec文件,比如我这里生成了ITOO.Library.EFBase.nuspec.

        

          5.notepad++打开该文件,修改其中的某些值,没用的可以删掉.$$之间的可以不用管,会自动引用AssemblyInfo.cs中的设置值.如果您还不确定哪里需要修改哪里需要删除,先往下做吧,待会提示警告,可以再修改.

 

          6.同样在命令提示符下,进入.csproj的文件目录,输入命令生成类库包,以我的为例,命令如下:

Nuget packITOO.Library.EFBase.csproj .成功后生成.nupkg文件,如我这里生成了ITOO.Library.EFBase.1.0.0.0.nupkg

        

            7.最后发布类库包即可,输入命令:nuget push ITOO.Library.EFBase.1.0.0.0.nupkg

会提示发布成功.

         



使用篇:


       1.新建一个项目,右键选择Manage NuGet Packages,搜索上面已经成功发布的包名,看我这里

      


      安装完成,您的项目已经自动添加了引用.


开发篇()


         8.类库需要修改,修改完成后要去AssemblyInfo.cs中修改版本号,一切修改完成后编译保存.

然后生成类库包并发布.即同样还是命令提示符下,进入.csproj的文件目录,分别运行两个命令:

       (1)生成类库包,以我的为例:

       Nuget packITOO.Library.EFBase.csproj


      

           (2)发布类库包,以我的为例:

          nuget pushITOO.Library.EFBase1.0.0.1.nupkg

       


使用篇()


         2.在项目上右键选择Manage NuGet Packages,在更新中可以看到我们要引用的类库包,点击更新即可.

        


至此,这一小问题算是解决了,随着开发不断推进,问题肯定还会再出现,我们且行且解决.



郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。