基于NET?Core?的Nuget包制作、發(fā)布和運(yùn)用流程解析(完整過程)
開發(fā)緣由:公司需要調(diào)用天眼查-開放平臺(tái) ,驗(yàn)證客戶的的營業(yè)執(zhí)照信息是否在存續(xù)期,并將企業(yè)基本信息返回,之后和使用百度圖文識(shí)別的企業(yè)信息進(jìn)行對(duì)照是否一致。
前期準(zhǔn)備
在網(wǎng)站中注冊(cè)后,需要夠買套餐。之后點(diǎn)擊個(gè)人中心進(jìn)入,點(diǎn)擊左側(cè)的我的接口,找到申請(qǐng)接口點(diǎn)擊選擇你要使用的接口,此次使用的是企業(yè)基本信息。
存放Nuget包目前我已知的是1.NuGet官網(wǎng)https://www.nuget.org 2.借助 Nexus Repository Manager 搭建私人的用于存放Nuget包的網(wǎng)站。
搭建私人網(wǎng)站較麻煩,本次使用第一種方式


一定要記住上圖的Token值!!
Nuget包制作
1.新建兩個(gè).net Core 類庫 ,方法如下:

2.新增加方法,用于調(diào)用天眼查獲取企業(yè)信息
方法中的具體實(shí)現(xiàn)邏輯請(qǐng)參考 https://gitee.com/comstar-starHouse/KK.Client.git

解決方案中 IEISManager 為對(duì)外暴露的接口。EnterpriseMessageOutput 為返回值。TianYanChaServiceCollectionExtension 為第三方系統(tǒng)調(diào)用時(shí)作為啟動(dòng)項(xiàng),傳入Token

3.填寫包、包版本、公司、作者、產(chǎn)品、進(jìn)行打包
右鍵點(diǎn)擊類庫打開屬性、生成,選擇Release

點(diǎn)擊打包 ,填寫包、包版本、公司、作者、產(chǎn)品,勾選在構(gòu)建時(shí)生成Nuget包

1.切換為Release ,2.重新生成解決方案 會(huì)在\bin\Release出現(xiàn)打包好的Nuget包


上傳Nuget包
1.在https://www.nuget.org/中進(jìn)行注冊(cè)
2.點(diǎn)擊Upload,點(diǎn)擊Browse,將打包好的Nuget包上傳

3.可以在用戶管理處,點(diǎn)擊Manage Packages中查看上傳成功后的Nuget包


Nuget包使用
我是在自己做的一個(gè) 項(xiàng)目中進(jìn)行測(cè)試使用的,項(xiàng)目中使用Swagger 訪問后端的接口,所以使用Host作為啟動(dòng)項(xiàng)
(一)、準(zhǔn)備配置信息
1.在解決方案的Host中引入Nuget包
<PackageReference Include="KK.EIS.TianYanCha" Version="1.0.1" />
2.在appsetting.json添加json串
"EISCode": {
"Token": "28131c23-cc0a-4cad-9e2b-6cb6485dd3a1"http://為注冊(cè)完天眼查-開放平臺(tái)可以獲得
},3.在Startup 文件中的找到ConfigureServices方法,在其中加載appsetting.json 中的配置
public IServiceProvider ConfigureServices(IServiceCollection services)
{
services.AddTianYanChaEIS(x => {
x.Token = _appConfiguration["EISCode:Token"];
});
}(二)、業(yè)務(wù)層調(diào)用
1.業(yè)務(wù)層添加Nuget包
<PackageReference Include="KK.EIS" Version="1.0.0" />
2.依賴注入,調(diào)用方法,傳入的是 "統(tǒng)一社會(huì)信用代碼"
public class EnterpriseMessageManager : DomainService
{
private IEISManager _eisManager;
public EnterpriseMessageManager(IEISManager eisManager)
{
_eisManager = eisManager;
}
/// <summary>
/// 調(diào)用天眼查查詢企業(yè)基本信息
/// </summary>
/// <param name="companyMessage"></param>
/// <returns></returns>
public ResultMessage<EnterpriseMessageOutput> EnterpriseBasicInformationAsync(string companyMessage)
{
var result = _eisManager.EnterpriseBasicInformationQueryAsync(companyMessage);
return result;
}3.返回信息
{
"result": {
"name": "中國移動(dòng)通信集團(tuán)有限公司",
"approvedTime": 1619452800000,
"regStatus": "存續(xù)",
"taxNumber": "911100007109250324",
"legalPersonName": "楊杰",
"regLocation": "北京市西城區(qū)金融大街29號(hào)",
"businessScope": "基礎(chǔ)電信業(yè)務(wù)(具體經(jīng)營范圍以許可證為準(zhǔn),有效期至2029年1月6日);增值電信業(yè)務(wù)(具體經(jīng)營范圍以許可證為準(zhǔn));互聯(lián)網(wǎng)視聽節(jié)目服務(wù)、手機(jī)電視分發(fā)服務(wù)、IPTV傳輸服務(wù)(信息傳輸業(yè)其他許可有效期至2021年09月17日);制作、發(fā)行廣播電視節(jié)目(時(shí)政、新聞及同類專題、專欄除外);經(jīng)營與信息通信業(yè)務(wù)相關(guān)的系統(tǒng)集成、漫游結(jié)算清算、技術(shù)開發(fā)、技術(shù)服務(wù)、廣告業(yè)務(wù)、設(shè)備銷售和進(jìn)出口業(yè)務(wù)等;國有資產(chǎn)投資及管理;業(yè)務(wù)培訓(xùn)、會(huì)議服務(wù);設(shè)計(jì)、制作廣告,利用自有媒體發(fā)布廣告。(市場主體依法自主選擇經(jīng)營項(xiàng)目,開展經(jīng)營活動(dòng);依法須經(jīng)批準(zhǔn)的項(xiàng)目,經(jīng)相關(guān)部門批準(zhǔn)后依批準(zhǔn)的內(nèi)容開展經(jīng)營活動(dòng);不得從事國家和本市產(chǎn)業(yè)政策禁止和限制類項(xiàng)目的經(jīng)營活動(dòng)。)",
"creditCode": "911100007109250324",
"estiblishTime": 932572800000,
"toTime": null,
"regCapital": "30000000萬人民幣"
},
"targetUrl": null,
"success": true,
"error": null,
"unAuthorizedRequest": false,
"__abp": true
}這就是完整的過程
到此這篇關(guān)于基于NET Core 的Nuget包制作、發(fā)布和運(yùn)用流程的文章就介紹到這了,更多相關(guān)net Core Nuget包發(fā)布流程內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C#實(shí)現(xiàn)對(duì)AES加密和解密的方法
C#實(shí)現(xiàn)對(duì)AES加密和解密的方法,需要的朋友可以參考一下2013-04-04
WPF實(shí)現(xiàn)平面三角形3D運(yùn)動(dòng)效果
這篇文章主要為大家詳細(xì)介紹了WPF實(shí)現(xiàn)平面三角形3D運(yùn)動(dòng)效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-09-09
C# OleDbDataReader快速數(shù)據(jù)讀取方式(3種)
這篇文章主要介紹了C# OleDbDataReader快速數(shù)據(jù)讀取方式(3種),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
C#編程自學(xué)之?dāng)?shù)據(jù)類型和變量二
這篇文章繼續(xù)介紹了C#數(shù)據(jù)類型和變量,是對(duì)上一篇文章的補(bǔ)充,希望對(duì)大家的學(xué)習(xí)有所幫助。2015-10-10
C#/VB.NET實(shí)現(xiàn)將Html轉(zhuǎn)為Word的示例詳解
本文分享以C#程序代碼為例,實(shí)現(xiàn)將Html文件轉(zhuǎn)換Word文檔的方法(附VB.NET代碼)。在實(shí)際轉(zhuǎn)換場景中可參考本文的方法,感興趣的可以了解一下2022-07-07
深入理解c# checked unchecked 關(guān)鍵字
本篇文章是對(duì)c#中的checked unchecked 關(guān)鍵字進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05
深入淺出掌握Unity ShaderLab語法基礎(chǔ)
Unity中所有Shader文件都通過一種陳述性語言進(jìn)行描述,稱為“ShaderLab”, 這篇文章主要介紹了Unity圖形學(xué)之ShaderLab入門基礎(chǔ),需要的朋友可以參考下2023-05-05
C#具名參數(shù)(Named Parameters)的使用
在C#中,具名參數(shù)是一種在方法調(diào)用中使用參數(shù)名稱來指定參數(shù)值的技術(shù),本文主要介紹了C#具名參數(shù)的使用,具有一定的參考價(jià)值,感興趣的可以了解一下2024-01-01
c#調(diào)用c++的DLL的實(shí)現(xiàn)方法
本文主要介紹了c#調(diào)用c++的DLL的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-05-05

