首页 > Web开发 > 详细

.Net Core 引用本地类库dll 发包方式

时间:2019-01-16 18:55:26      阅读:539      评论:0      收藏:0      [点我收藏+]

最近了解到的Core 项目,引用本地DLL的方式有三种

1、非同解决方案下的引用,直接引用,浏览,找到对应的DLL,然后确定引用。

这种方式有个不好的地方就是,如果引用的DLL文件里面,也引用了第三方DLL,那么通过这种方式引用,第三方DLL不会跟着引用进来,需要在项目里面重新又引用一次。

技术分享图片

 

2、同解决方案下,通过项目引用

技术分享图片

这种方式,就不需要再同解决方案下, 这样会项目太大,编译较慢,不过不存在上面那种方式的问题;

3、类库生成包,然后站点通过NuGet方式引用。今天重点记录一下这种方式的详细操作过程;

①、新建Core 类库

技术分享图片

类库里面新建一个类即可,只作为测试

技术分享图片

类库已经建好,下面开始打包,可以通过nuget命令方式打包,也可以直接选中项目,右键打包即可

a、命令方式:

打开nuget 控制台

技术分享图片

输入如下命令

dotnet pack F:\测试项目代码-待删\CoreTest.Library\PigMGT.DB.PigMGT_Stat --output F:\测试项目代码-待删\CoreTest.Library\nupkg   

前面的地址是需要生成的项目文件路径,后面的output 接的路径是指包文件生成路径

技术分享图片

2、鼠标右键方式:

技术分享图片

技术分享图片

这种方式默认包生成路径在该项目下,Bin =》debug 文件夹下,这里重点看下,这种方式有个问题就是第一次点击发包,然后生成成功,但是当你再次点击发包,则失败

技术分享图片

提示成功0个,这代表重新打包失败了,需要右键点击清理后才可以再次进行打包。

好像,通过上面的操作,我们的类库包已经打包好了,可以看看包文件

技术分享图片

文件后缀是nupkg 格式的,注意看下,这里的1.0.0 是对应的版本好,这个很重要,下面会详细说到;

②、.core 项目引用包的操作方式

前面有说到,引用包是通过nuget 的方式引用的,这个也是core  的一个特色,引用第三方插件都是通过nuget 的方式直接搜索安装即可,下面来操作一下,先配置一下数据源,因为默认是没有你本地的包文件数据源的

技术分享图片

技术分享图片

添加一个程序源,记得路径要改为你的包路径,点击确定

然后再进行引用

技术分享图片

技术分享图片

 

这里就可以看到我们刚建的类库项目了,选中直接安装即可,这样就已经引用成功啦

技术分享图片

 

 后台代码直接就可以调用这个包里面的类进行操作了,这样整个操作已经完成,不过我在操作过程中,有遇到几个问题,这里重点记录一下

1、重复打包失败问题,前面有说到,需要清理后重新打包即可

2、如果包需要更改,更改后怎么重新打包引用。

我在测试过程中,在类里面加了个属性,但是重新引用后,还是没有变成改之后的参数,不管是删掉nuget程序源或重新建站点,都是如此,如果我就怀疑是不是包的问题,我给我更新后的包给同事,但是在他那边确实更新后的包,这样,就确定了包其实是没有问题的,后面,发现了这个其实和包的版本有关,前面有说到那个版本问题,默认是1.0.0,如果这个版本不变,则即使包更改了,重新引用还是如此,都是改之前的,解决方式就是更改包后,需要更改他的包版本,如下:

技术分享图片

更改后然后重新打包,然后包的文件就变成了技术分享图片,名称和版本号保持一致(不要想说重命名包名就可以,我试过了,是不行的哦),此时,版本号变了后,站点Nuget 解决方案就会自动有更新的提示,你直接点击安装即可,这样,就已经更新到了最新的包版本,这种方式就有个问题,如果每次更新类库了,都需要改它的版本号才行,我目前了解是这样,也许有其他方式

技术分享图片

好啦,以上完毕,我也是才接触,如果有什么问题大家只管留言

 

.Net Core 引用本地类库dll 发包方式

原文:https://www.cnblogs.com/wangshitou/p/10278631.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!