ASP.NET如何自定義項目模板詳解
前言
在微服務(wù)架構(gòu)盛行的時代,一言不合就新建一個服務(wù),雖然搭建服務(wù)并沒什么難度,但不可避免的是每個人搭建出來的架子會存在差異,這很合理,因為每個開發(fā)者的個人風(fēng)格、工作經(jīng)驗都不一樣,難免認(rèn)為自己喜歡的才是最好的。另一方面,如果需要較頻繁搭建服務(wù),這些重復(fù)而沒難度的操作就顯得浪費時間,而且每次手動處理總可能存在一些細(xì)節(jié)上的失誤,出現(xiàn)異常然后花時間解決更得不償失。
面對以上一些問題,擁有一個符合自己團(tuán)隊的項目模板就顯得比較重要了,這篇文章主要介紹在 ASP.NET 如果自定義項目模板。
內(nèi)置的項目模板
在 VS 中,新建項目時我們都需要先選項目類型,這些類型選項本質(zhì)上是內(nèi)置的項目模板,不同類型對應(yīng)不同的項目代碼結(jié)構(gòu)。
通過命令查看當(dāng)前有的項目模板:
dotnet new -h
以上是內(nèi)置的一些項目模板,如 console 、 classlib 、 mvc 、 webapi 等應(yīng)該都是平時使用比較多的。
創(chuàng)建項目模板
搭建項目 ( 這里是只是 Demo 例子,實際根據(jù)自己的項目要求自定義項目結(jié)構(gòu) )
- 新建一個 .NET Core Web API 項目(DemoService.API) 和 .NET Standard 類庫(DemoService.Core);
- DemoService.API 引用 DemoService.Core;
- DemoService.API 添加 Swashbuckle.AspNetCore 生成 Swager 文檔的引用;
- DemoService.Core 添加 ServiceStack.OrmLite.SqlServer 數(shù)據(jù)庫操作的 ORM 庫引用;
這一步和搭建普通的項目沒任何區(qū)別,搭建完成后可測試看看效果。
添加模板配置
在解決方案 .sln 所在的目錄下創(chuàng)建模板配置文件夾 .template.config ,并在 .template.config 文件夾下創(chuàng)建 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:模板名稱,當(dāng)使用 dotnet new 創(chuàng)建項目時,指定的模板名稱,必填
- identity:模板唯一名稱,可選
- shortName:模板簡短名稱,必填
- tags:模板標(biāo)簽
- sourceName:指定一個字符串,當(dāng)使用 dotnet new 帶 -n 參數(shù)時,-n 參數(shù)的值會替換 sourceName 指定的字符串。
- preferNameDirectory:是否生成相同名稱的目錄,可選。
安裝模板
dotnet new -i <PATH> // 當(dāng)前目錄下:dotnet new -i .\
從模板創(chuàng)建項目
模板安裝成功后,我們可以通過 dotnet new 創(chuàng)建新項目,在存放新項目的目錄下執(zhí)行如下命令:
dotnet new swa -n UserService
swa 為 DemoService 的 shortName , -n 后的 UserService 將替換 DemoService 名,這樣一條命令 UserService 服務(wù)的基礎(chǔ)架子就好了。
參考鏈接
- 創(chuàng)建項目模板
- ProjectTemplateSmaple 源碼
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對我們的支持。
上一篇:ASP.NET第一次訪問慢的完美解決方案(MVC,Web Api)
欄 目:ASP.NET
本文標(biāo)題:ASP.NET如何自定義項目模板詳解
本文地址:http://www.jygsgssxh.com/a1/ASP_NET/10894.html
您可能感興趣的文章
- 01-11如何給asp.net core寫個簡單的健康檢查
- 01-11.net core高吞吐遠(yuǎn)程方法如何調(diào)用組件XRPC詳解
- 01-11docker部署Asp.net core應(yīng)用的完整步驟
- 01-11ASP.NET Core靜態(tài)文件的使用方法
- 01-11asp.net Core3.0區(qū)域與路由配置的方法
- 01-11ASP.Net Core中使用枚舉類而不是枚舉的方法
- 01-11Asp.net core利用MediatR進(jìn)程內(nèi)發(fā)布/訂閱詳解
- 01-11WCF如何綁定netTcpBinding寄宿到控制臺應(yīng)用程序詳解
- 01-11ASP.NET Core中間件計算Http請求時間示例詳解
- 01-11asp.net core集成JWT的步驟記錄


閱讀排行
本欄相關(guān)
- 01-11vscode extension插件開發(fā)詳解
- 01-11VsCode插件開發(fā)之插件初步通信的方法
- 01-11如何給asp.net core寫個簡單的健康檢查
- 01-11.net core高吞吐遠(yuǎn)程方法如何調(diào)用組件
- 01-11淺析.Net Core中Json配置的自動更新
- 01-11.NET開發(fā)人員關(guān)于ML.NET的入門學(xué)習(xí)
- 01-11.NET Core 遷移躺坑記續(xù)集之Win下莫名其
- 01-11.net core webapi jwt 更為清爽的認(rèn)證詳解
- 01-11docker部署Asp.net core應(yīng)用的完整步驟
- 01-11ASP.NET Core靜態(tài)文件的使用方法
隨機(jī)閱讀
- 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 04-02jquery與jsp,用jquery
- 08-05DEDE織夢data目錄下的sessions文件夾有什
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 01-10C#中split用法實例總結(jié)
- 01-10delphi制作wav文件的方法
- 01-11ajax實現(xiàn)頁面的局部加載


