一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - ASP.NET教程 - .NET Core中創建和使用NuGet包的示例代碼

.NET Core中創建和使用NuGet包的示例代碼

2020-06-29 14:20PowerCoder ASP.NET教程

這篇文章主要介紹了.NET Core中創建和使用NuGet包的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

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

下面我們通過一個.NET Core類庫項目和一個ASP.NET Core項目,來演示怎么發布一個NuGet包,并在項目中引用該NuGet包。

首先我們新建一個.NET Core類庫項目"Custom.Library.StringUtils",它包含一個簡單的字符串工具類"StringHelper",用來做簡單的字符串處理:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
using System;
using Newtonsoft.Json;
 
namespace Custom.Library.StringUtils
{
 /// <summary>
 /// 字符串工具類
 /// </summary>
 public static class StringHelper
 {
  /// <summary>
  /// 將字符串轉換為大寫
  /// </summary>
  /// <param name="text">字符串</param>
  /// <returns>大寫的字符串</returns>
  public static string GetUpperString(string text)
  {
   return text.ToUpper();
  }
 
  /// <summary>
  /// 將一個對象轉換為json字符串
  /// </summary>
  /// <param name="jsonObject">對象</param>
  /// <returns>json字符串</returns>
  public static string ToJson(object jsonObject)
  {
   return JsonConvert.SerializeObject(jsonObject);
  }
 }
}

注意為了演示我們這個.NET Core類庫項目還引用了其它NuGet包,我們在項目中引用和使用了著名的json處理NuGet包:Newtonsoft.Json

.NET Core中創建和使用NuGet包的示例代碼

接下來我們要把類庫項目"Custom.Library.StringUtils"發布為一個NuGet包。

首先由于我們在項目中寫了很多<summary>注釋,我們肯定希望其它的.NET Core項目引用了我們的NuGet包后,也能得到這些<summary>的提示,所以我們要在項目屬性(Properties)上做一些設置:

.NET Core中創建和使用NuGet包的示例代碼

在項目的屬性上,我們選中Build頁面,這里有兩個地方要進行設置,首先由于我們是要在發布的NuGet包中生成XMLdocumentation文件,來包含<summary>注釋,所以我們要將Configuration下拉框選擇為All Configurations,這樣我們可以在發布(Release)時也生成XMLdocumentation文件,而不僅僅是在調試(Debug)時才生成。然后我們還要確保XML documentation file這個復選框是勾上的,這樣當我們的.NET Core類庫項目發布后才會生成對應的XML documentation文件:

.NET Core中創建和使用NuGet包的示例代碼

其次每個NuGet包其實都有版本號,我們可以在Package頁面,通過Package version來設置當前NuGet包的版本號為1.0.0,如下所示:

.NET Core中創建和使用NuGet包的示例代碼

然后我們就可以發布我們的.NET Core類庫項目"Custom.Library.StringUtils"為NuGet包了,在項目上點擊發布(Publish):

.NET Core中創建和使用NuGet包的示例代碼

在彈出的配置窗口中選擇一個發布目錄,這里我們選擇為本地計算機目錄"C:\Local nuget repository",這個目錄也會作為我們后面本地NuGet包管理器的source,實際上我們還可以選擇一臺遠程計算機的共享目錄(例如\\192.168.1.105\Remote nuget packages這種網絡共享目錄)作為NuGet包的source目錄,這樣如果我們的開發團隊人員是在一個局域網中,就可以讓每個開發人員的Visual Studio從局域網的共享目錄中獲取需要的NuGet包了。

.NET Core中創建和使用NuGet包的示例代碼

點擊發布(Publish)后,我們可以在目錄"C:\Local nuget repository"下看到,類庫項目生成的NuGet文件就已經存在了:

.NET Core中創建和使用NuGet包的示例代碼

注意生成的NuGet文件名中是包含版本號的,例如現在如果我們在項目屬性(Properties)中的Package頁面上,將Package version改為2.0.0,如下所示:

.NET Core中創建和使用NuGet包的示例代碼

然后再發布.NET Core類庫項目,我們可以看到在發布目錄"C:\Local nuget repository"下會再生成一個NuGet文件,這次版本號是2.0.0:

.NET Core中創建和使用NuGet包的示例代碼

接下來我們就要在另外一個ASP.NET Core項目中來引用我們創建的NuGet包了,為此,我們新建一個ASP.NET Core項目"AspNetCore3000Message"。

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

.NET Core中創建和使用NuGet包的示例代碼

然后在彈出窗口中選中Package Sources頁面,然后點擊加號新建一個NuGet包source,名稱(Name)為"Local nuget package",路徑(Source)為我們前面.NET Core類庫項目的發布目錄"C:\Local nuget repository",如下所示:

.NET Core中創建和使用NuGet包的示例代碼

點擊OK按鈕后,我們就將一個本地目錄設置為了Visual Studio中NuGet包管理器的source了,就像前面所說我們還可以將一臺遠程計算機的共享目錄作為source,這樣開發團隊人員的Visual Studio都可以從該共享目錄中獲取NuGet包了。

現在我們在ASP.NET Core項目"AspNetCore3000Message"中,打開NuGet包管理器:

.NET Core中創建和使用NuGet包的示例代碼

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

.NET Core中創建和使用NuGet包的示例代碼

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

.NET Core中創建和使用NuGet包的示例代碼

之后我們就可以在ASP.NET Core項目中使用.NET Core類庫項目中的StringHelper類了,并且可以看到<summary>注釋是成功顯示的:

.NET Core中創建和使用NuGet包的示例代碼

參考文獻:

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

到此這篇關于.NET Core中創建和使用NuGet包的示例代碼的文章就介紹到這了,更多相關.NET Core 創建和使用NuGet包內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://www.cnblogs.com/OpenCoder/p/12620734.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 大胆国模一区二区三区伊人 | 成年人黄色录像 | 丁香婷婷在线视频 | m3u8久久国产精品影院 | 火影忍者小南裸羞羞漫画 | 美女脱了内裤打开腿让人羞羞软件 | 美艳教师刘艳第三部166 | 美国69xxxx59| 色综色天天综合网 | 国产精品免费_区二区三区观看 | 九九精品视频在线观看 | 天天综合天天综合色在线 | 国内久久精品 | 亚洲国产欧美在线人成aaa | 精品国产一级毛片大全 | 四虎在线免费播放 | 国产欧美日韩不卡 | 婚色阿花在线全文免费笔 | 欧美人禽杂交av片 | 欧美一级在线 | 国内精品自产拍在线观看91 | 午夜一区二区免费视频 | 高清国产激情视频在线观看 | 91精品国产高清久久久久久 | 高清女主播一区二区三区 | 国产成人h视频在线播放网站 | 免费一区在线观看 | 超级乱淫伦短篇小说做车 | 国产成人v爽在线免播放观看 | 日韩人成 | 狠狠色综合久久婷婷色天使 | 亚洲国产在线 | 精品91一区二区三区 | 校花在公车上被内射好舒服 | 禁忌第一季第3季 | 成年私人影院免费视频网站 | 娇小XXXXX第一次出血 | 亚州精品视频 | 国产一区风间由美在线观看 | 麻豆夏晴子 | 免费视频专区一国产盗摄 |