欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

.NET Core中創(chuàng)建和使用NuGet包的示例代碼

 更新時(shí)間:2020年04月03日 14:40:01   作者:PowerCoder  
這篇文章主要介紹了.NET Core中創(chuàng)建和使用NuGet包的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

在.NET Core的項(xiàng)目中,如果我們要在項(xiàng)目中引用其它DLL文件,不建議直接在項(xiàng)目引用中添加DLL文件(雖然在.NET Core項(xiàng)目中也可以這么做),建議是去直接下載DLL文件所屬的NuGet包。這樣最大的好處是我們可以將要引用DLL文件的所有依賴(lài)文件也一起引入到項(xiàng)目中,這樣保證了引用文件的完整性,讓其可以正確地運(yùn)行。

下面我們通過(guò)一個(gè).NET Core類(lèi)庫(kù)項(xiàng)目和一個(gè)ASP.NET Core項(xiàng)目,來(lái)演示怎么發(fā)布一個(gè)NuGet包,并在項(xiàng)目中引用該NuGet包。

首先我們新建一個(gè).NET Core類(lèi)庫(kù)項(xiàng)目"Custom.Library.StringUtils",它包含一個(gè)簡(jiǎn)單的字符串工具類(lèi)"StringHelper",用來(lái)做簡(jiǎn)單的字符串處理:

using System;
using Newtonsoft.Json;

namespace Custom.Library.StringUtils
{
 /// <summary>
 /// 字符串工具類(lèi)
 /// </summary>
 public static class StringHelper
 {
  /// <summary>
  /// 將字符串轉(zhuǎn)換為大寫(xiě)
  /// </summary>
  /// <param name="text">字符串</param>
  /// <returns>大寫(xiě)的字符串</returns>
  public static string GetUpperString(string text)
  {
   return text.ToUpper();
  }

  /// <summary>
  /// 將一個(gè)對(duì)象轉(zhuǎn)換為json字符串
  /// </summary>
  /// <param name="jsonObject">對(duì)象</param>
  /// <returns>json字符串</returns>
  public static string ToJson(object jsonObject)
  {
   return JsonConvert.SerializeObject(jsonObject);
  }
 }
}

注意為了演示我們這個(gè).NET Core類(lèi)庫(kù)項(xiàng)目還引用了其它NuGet包,我們?cè)陧?xiàng)目中引用和使用了著名的json處理NuGet包:Newtonsoft.Json

接下來(lái)我們要把類(lèi)庫(kù)項(xiàng)目"Custom.Library.StringUtils"發(fā)布為一個(gè)NuGet包。

首先由于我們?cè)陧?xiàng)目中寫(xiě)了很多<summary>注釋?zhuān)覀兛隙ㄏM渌?NET Core項(xiàng)目引用了我們的NuGet包后,也能得到這些<summary>的提示,所以我們要在項(xiàng)目屬性(Properties)上做一些設(shè)置:

在項(xiàng)目的屬性上,我們選中Build頁(yè)面,這里有兩個(gè)地方要進(jìn)行設(shè)置,首先由于我們是要在發(fā)布的NuGet包中生成XMLdocumentation文件,來(lái)包含<summary>注釋?zhuān)晕覀円獙onfiguration下拉框選擇為All Configurations,這樣我們可以在發(fā)布(Release)時(shí)也生成XMLdocumentation文件,而不僅僅是在調(diào)試(Debug)時(shí)才生成。然后我們還要確保XML documentation file這個(gè)復(fù)選框是勾上的,這樣當(dāng)我們的.NET Core類(lèi)庫(kù)項(xiàng)目發(fā)布后才會(huì)生成對(duì)應(yīng)的XML documentation文件:

其次每個(gè)NuGet包其實(shí)都有版本號(hào),我們可以在Package頁(yè)面,通過(guò)Package version來(lái)設(shè)置當(dāng)前NuGet包的版本號(hào)為1.0.0,如下所示:

然后我們就可以發(fā)布我們的.NET Core類(lèi)庫(kù)項(xiàng)目"Custom.Library.StringUtils"為NuGet包了,在項(xiàng)目上點(diǎn)擊發(fā)布(Publish):

在彈出的配置窗口中選擇一個(gè)發(fā)布目錄,這里我們選擇為本地計(jì)算機(jī)目錄"C:\Local nuget repository",這個(gè)目錄也會(huì)作為我們后面本地NuGet包管理器的source,實(shí)際上我們還可以選擇一臺(tái)遠(yuǎn)程計(jì)算機(jī)的共享目錄(例如\\192.168.1.105\Remote nuget packages這種網(wǎng)絡(luò)共享目錄)作為NuGet包的source目錄,這樣如果我們的開(kāi)發(fā)團(tuán)隊(duì)人員是在一個(gè)局域網(wǎng)中,就可以讓每個(gè)開(kāi)發(fā)人員的Visual Studio從局域網(wǎng)的共享目錄中獲取需要的NuGet包了。

點(diǎn)擊發(fā)布(Publish)后,我們可以在目錄"C:\Local nuget repository"下看到,類(lèi)庫(kù)項(xiàng)目生成的NuGet文件就已經(jīng)存在了:

注意生成的NuGet文件名中是包含版本號(hào)的,例如現(xiàn)在如果我們?cè)陧?xiàng)目屬性(Properties)中的Package頁(yè)面上,將Package version改為2.0.0,如下所示:

然后再發(fā)布.NET Core類(lèi)庫(kù)項(xiàng)目,我們可以看到在發(fā)布目錄"C:\Local nuget repository"下會(huì)再生成一個(gè)NuGet文件,這次版本號(hào)是2.0.0:

接下來(lái)我們就要在另外一個(gè)ASP.NET Core項(xiàng)目中來(lái)引用我們創(chuàng)建的NuGet包了,為此,我們新建一個(gè)ASP.NET Core項(xiàng)目"AspNetCore3000Message"。

首先我們要配置Visual Studio中尋找NuGet包的source,在Visual Studio中選擇Tools > NuGet Package Manager > Package Manager Settings

然后在彈出窗口中選中Package Sources頁(yè)面,然后點(diǎn)擊加號(hào)新建一個(gè)NuGet包source,名稱(chēng)(Name)為"Local nuget package",路徑(Source)為我們前面.NET Core類(lèi)庫(kù)項(xiàng)目的發(fā)布目錄"C:\Local nuget repository",如下所示:

點(diǎn)擊OK按鈕后,我們就將一個(gè)本地目錄設(shè)置為了Visual Studio中NuGet包管理器的source了,就像前面所說(shuō)我們還可以將一臺(tái)遠(yuǎn)程計(jì)算機(jī)的共享目錄作為source,這樣開(kāi)發(fā)團(tuán)隊(duì)人員的Visual Studio都可以從該共享目錄中獲取NuGet包了。

現(xiàn)在我們?cè)贏SP.NET Core項(xiàng)目"AspNetCore3000Message"中,打開(kāi)NuGet包管理器:

然后,我們將右上角的Package source下拉框選擇為All,接著在搜索框中輸入我們前面發(fā)布的.NET Core類(lèi)庫(kù)項(xiàng)目名"Custom.Library.StringUtils",就可以找到我們發(fā)布的NuGet包了,由于我們前面發(fā)布了兩個(gè)版本到發(fā)布目錄"C:\Local nuget repository",所以這里顯示NuGet包的版本也有兩個(gè)"1.0.0"和"2.0.0",另外由于我們?cè)?NET Core類(lèi)庫(kù)項(xiàng)目"Custom.Library.StringUtils"中引用了Newtonsoft.Json這個(gè)NuGet包,所以我們這里看到在Dependencies下面顯示我們的NuGet包還依賴(lài)于Newtonsoft.Json,這樣在安裝我們的NuGet包Custom.Library.StringUtils時(shí),也會(huì)下載和安裝Newtonsoft.Json這個(gè)NuGet包,保證了所有依賴(lài)的DLL文件都被引用到了ASP.NET Core項(xiàng)目"AspNetCore3000Message"中:

這里我們選擇安裝"2.0.0"版本:

之后我們就可以在ASP.NET Core項(xiàng)目中使用.NET Core類(lèi)庫(kù)項(xiàng)目中的StringHelper類(lèi)了,并且可以看到<summary>注釋是成功顯示的:

參考文獻(xiàn):

How to include XML documentation file in NuGet package built from a project file?

到此這篇關(guān)于.NET Core中創(chuàng)建和使用NuGet包的示例代碼的文章就介紹到這了,更多相關(guān).NET Core 創(chuàng)建和使用NuGet包內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • asp.NET連接數(shù)的設(shè)置方法

    asp.NET連接數(shù)的設(shè)置方法

    asp.NET連接數(shù)的設(shè)置方法,需要的朋友可以參考下
    2012-12-12
  • MultiLine 換行后實(shí)現(xiàn)讀取不換行的具體思路

    MultiLine 換行后實(shí)現(xiàn)讀取不換行的具體思路

    輸入內(nèi)容中有換行,保存到數(shù)據(jù)庫(kù),直接查看感覺(jué)沒(méi)有換行,但查詢(xún)結(jié)果“以文本格式顯示結(jié)果”你就會(huì)發(fā)現(xiàn) 其實(shí)是有換行的,下面與大家分享下具體的解決方法
    2013-06-06
  • Asp.Net MVC4通過(guò)id更新表單內(nèi)容的思路詳解

    Asp.Net MVC4通過(guò)id更新表單內(nèi)容的思路詳解

    一個(gè)表單一旦創(chuàng)建完,其中大部分的字段便不可再編輯。只能編輯其中部分字段。下面通過(guò)本文給大家分享Asp.Net MVC4通過(guò)id更新表單內(nèi)容的思路詳解,需要的朋友參考下吧
    2017-07-07
  • DropDownList獲取的SelectIndex一直為0的問(wèn)題

    DropDownList獲取的SelectIndex一直為0的問(wèn)題

    由于初始化判斷出錯(cuò)導(dǎo)致每次傳到服務(wù)器的時(shí)候會(huì)初始化一次,這就導(dǎo)致每次獲取DropDownList的SelectIndex的時(shí)候只能是0
    2014-06-06
  • .NET實(shí)現(xiàn)文件跨服務(wù)器上傳下載的方法

    .NET實(shí)現(xiàn)文件跨服務(wù)器上傳下載的方法

    這篇文章主要給大家介紹了.NET文件如何實(shí)現(xiàn)跨服務(wù)器上傳下載的方法,文中通過(guò)圖片介紹的很詳細(xì),相信對(duì)大家的理解和學(xué)習(xí)具有一定的參考借鑒價(jià)值,有需要的朋友們可以跟著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2016-12-12
  • 老生常談.NET中的?COM?組件

    老生常談.NET中的?COM?組件

    COM組件中的接口是一組由組件實(shí)現(xiàn)的,提供給客戶(hù)使用的函數(shù),這篇文章主要介紹了.NET中的?COM?組件,需要的朋友可以參考下
    2022-10-10
  • 發(fā)布asp.net core時(shí)如何修改ASPNETCORE_ENVIRONMENT環(huán)境變量

    發(fā)布asp.net core時(shí)如何修改ASPNETCORE_ENVIRONMENT環(huán)境變量

    這篇文章主要介紹了發(fā)布asp.net core時(shí)如何修改ASPNETCORE_ENVIRONMENT環(huán)境變量,幫助大家更好的理解和學(xué)習(xí)使用.net技術(shù),感興趣的朋友可以了解下
    2021-04-04
  • Asp.net 自帶報(bào)表的使用詳解

    Asp.net 自帶報(bào)表的使用詳解

    最近公司的功能需要使用報(bào)表,用的是微軟自帶的報(bào)表,談一談我們的做法,希望可以給想學(xué)習(xí)的人一些指導(dǎo)
    2013-10-10
  • NET Core 3.0 AutoFac內(nèi)置DI替換的新姿勢(shì)分享

    NET Core 3.0 AutoFac內(nèi)置DI替換的新姿勢(shì)分享

    這篇文章主要給大家介紹了關(guān)于NET Core 3.0 AutoFac內(nèi)置DI替換的新姿勢(shì),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用NET Core 3.0具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • ASP.NET文件處理如何操作

    ASP.NET文件處理如何操作

    這篇文章主要介紹了ASP.NET文件處理如何操作,需要的朋友可以參考下
    2015-09-09

最新評(píng)論