在微服務架構盛行的時代,一言不合就新建一個服務,雖然搭建服務并沒什么難度,但不可避免的是每個人搭建出來的架子會存在差異,這很合理,因為每個開發" />

ASP.NET如何自定義項目模板詳解

 更新時間:2019-09-08 20:01:39   作者:佚名   我要評論(0)

前言
在微服務架構盛行的時代,一言不合就新建一個服務,雖然搭建服務并沒什么難度,但不可避免的是每個人搭建出來的架子會存在差異,這很合理,因為每個開發

前言

在微服務架構盛行的時代,一言不合就新建一個服務,雖然搭建服務并沒什么難度,但不可避免的是每個人搭建出來的架子會存在差異,這很合理,因為每個開發者的個人風格、工作經驗都不一樣,難免認為自己喜歡的才是最好的。另一方面,如果需要較頻繁搭建服務,這些重復而沒難度的操作就顯得浪費時間,而且每次手動處理總可能存在一些細節上的失誤,出現異常然后花時間解決更得不償失。

面對以上一些問題,擁有一個符合自己團隊的項目模板就顯得比較重要了,這篇文章主要介紹在 ASP.NET 如果自定義項目模板。

內置的項目模板

在 VS 中,新建項目時我們都需要先選項目類型,這些類型選項本質上是內置的項目模板,不同類型對應不同的項目代碼結構。

通過命令查看當前有的項目模板:

dotnet new -h

以上是內置的一些項目模板,如 console 、 classlib 、 mvc 、 webapi 等應該都是平時使用比較多的。

創建項目模板

搭建項目 ( 這里是只是 Demo 例子,實際根據自己的項目要求自定義項目結構 )


  • 新建一個 .NET Core Web API 項目(DemoService.API) 和 .NET Standard 類庫(DemoService.Core);
  • DemoService.API 引用 DemoService.Core;
  • DemoService.API 添加 Swashbuckle.AspNetCore 生成 Swager 文檔的引用;
  • DemoService.Core 添加 ServiceStack.OrmLite.SqlServer 數據庫操作的 ORM 庫引用;

這一步和搭建普通的項目沒任何區別,搭建完成后可測試看看效果。

添加模板配置

在解決方案 .sln 所在的目錄下創建模板配置文件夾 .template.config ,并在 .template.config 文件夾下創建 template.json 文件,編輯 template.json ,輸入以下配置:

{
"$schema": "http://json.schemastore.org/template",
"author": "Me",
"classifications": [ "micro", "webapi" ], 
"identity": "DemoService",
"name": "DemoService",
"shortName": "swa",
"tags": {
"language": "C#",
"type": "project" 
},
"sourceName": "DemoService", 
"preferNameDirectory":"true"
}

配置說明:

  • author:模板作者,必填
  • classifications:模板分類,必填
  • name:模板名稱,當使用 dotnet new 創建項目時,指定的模板名稱,必填
  • identity:模板唯一名稱,可選
  • shortName:模板簡短名稱,必填
  • tags:模板標簽
  • sourceName:指定一個字符串,當使用 dotnet new 帶 -n 參數時,-n 參數的值會替換 sourceName 指定的字符串。
  • preferNameDirectory:是否生成相同名稱的目錄,可選。

安裝模板

dotnet new -i <PATH> // 當前目錄下:dotnet new -i .\

從模板創建項目

模板安裝成功后,我們可以通過 dotnet new 創建新項目,在存放新項目的目錄下執行如下命令:

dotnet new swa -n UserService

swa 為 DemoService 的 shortName , -n 后的 UserService 將替換 DemoService 名,這樣一條命令 UserService 服務的基礎架子就好了。

參考鏈接

  • 創建項目模板
  • ProjectTemplateSmaple 源碼

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。

您可能感興趣的文章:

  • C#設計模式之Template模板方法模式實現ASP.NET自定義控件 密碼強度檢測功能

相關文章

  • Python實現TCP探測目標服務路由軌跡的原理與方法詳解

    Python實現TCP探測目標服務路由軌跡的原理與方法詳解

    本文實例講述了Python實現TCP探測目標服務路由軌跡的原理與方法。分享給大家供大家參考,具體如下: 一 點睛 在此次實踐中,通過scapy的traceroute()方法實現
    2019-09-08
  • ASP.NET如何自定義項目模板詳解

    ASP.NET如何自定義項目模板詳解

    前言 在微服務架構盛行的時代,一言不合就新建一個服務,雖然搭建服務并沒什么難度,但不可避免的是每個人搭建出來的架子會存在差異,這很合理,因為每個開發
    2019-09-08
  • python requests證書問題解決

    python requests證書問題解決

    用requests包請求https的網站時,我們偶爾會遇到證書問題。也就是常見的SSLerror,遇到這種問題莫慌莫慌。 這里沒有找到合適的網站去報SSL證書的錯誤,所以就
    2019-09-08
  • python global關鍵字的用法詳解

    python global關鍵字的用法詳解

    最近剛好有朋友遇到個global相關的問題,這里簡單學習一下global關鍵字的用法。 想要更好的了解global關鍵字,首先要熟悉python的全局變量與局部變量的概念。
    2019-09-08
  • Python數據分析模塊pandas用法詳解

    Python數據分析模塊pandas用法詳解

    本文實例講述了Python數據分析模塊pandas用法。分享給大家供大家參考,具體如下: 一 介紹 pandas(Python Data Analysis Library)是基于numpy的數據分析
    2019-09-08
  • ASP.NET Core MVC基礎學習之局部視圖(Partial Views)

    ASP.NET Core MVC基礎學習之局部視圖(Partial Views)

    1.什么是局部視圖   局部視圖是在其他視圖中呈現的視圖。通過執行局部視圖生成的HTML輸出呈現在調用視圖中。與視圖一樣,局部視圖使用 .cshtml 文件擴展名。
    2019-09-08
  • python urllib爬蟲模塊使用解析

    python urllib爬蟲模塊使用解析

    前言 網絡爬蟲也稱為網絡蜘蛛、網絡機器人,抓取網絡的數據。其實就是用Python程序模仿人點擊瀏覽器并訪問網站,而且模仿的越逼真越好。一般爬取數據的目的主
    2019-09-08
  • 關于Python內存分配時的小秘密分享

    關于Python內存分配時的小秘密分享

    前言 Python 中的sys 模塊極為基礎而重要,它主要提供了一些給解釋器使用(或由它維護)的變量,以及一些與解釋器強交互的函數。 本文將會頻繁地使用該模塊
    2019-09-08
  • 你應該知道的.NET錯誤與異常處理機制

    你應該知道的.NET錯誤與異常處理機制

    前言 錯誤的出現并不總是編寫程序的人的原因,有時應用程序會因為應用程序的最終用戶引發的動作或運行代碼的環境發生錯誤。無論如何,我們都應預測應用程序
    2019-09-08
  • 深入了解Python在HDA中的應用

    深入了解Python在HDA中的應用

    Event Handler 在HDA中,要創建Python腳本,需要先選擇一個事件處理器(EventHandle),他表示你要在什么時候執行你現在所創建的腳本命令 On Created (在節點創建
    2019-09-08

最新評論

亿宝娱乐黑钱