.NET 自定義項目模板(一):快速入門

前言

在微服務架構盛行的時代信殊,一言不合就新建一個服務炬称,雖然搭建服務并沒什么難度,但不可避免的是每個人搭建出來的架子會存在差異涡拘,這很合理玲躯,因為每個開發(fā)者的個人風格、工作經(jīng)驗都不一樣鳄乏,難免認為自己喜歡的才是最好的跷车。另一方面,如果需要較頻繁搭建服務橱野,這些重復而沒難度的操作就顯得浪費時間朽缴,而且每次手動處理總可能存在一些細節(jié)上的失誤,出現(xiàn)異常然后花時間解決更得不償失水援。

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

內置的項目模板

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

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

dotnet new -h
內置的項目模板

以上是內置的一些項目模板毕谴,如 console成畦、classlibmvc涝开、webapi 等應該都是平時使用比較多的循帐。

創(chuàng)建項目模板

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

    DemoService
    • 新建一個 .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ū)別瘪匿,搭建完成后可測試看看效果。

  2. 添加模板配置

    在解決方案 .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:模板名稱漾岳,當使用 dotnet new 創(chuàng)建項目時,指定的模板名稱粉寞,必填
    • identity:模板唯一名稱尼荆,必填
    • shortName:模板簡短名稱,必填
    • tags:模板標簽
    • sourceName:指定一個字符串仁锯,當使用 dotnet new 帶 -n 參數(shù)時耀找,-n 參數(shù)的值會替換 sourceName 指定的字符串。
    • preferNameDirectory:是否生成相同名稱的目錄业崖,可選野芒。
  3. 安裝模板

    dotnet new -i <PATH>   // 當前目錄下:dotnet new -i .\
    
    DemoService 模板安裝

從模板創(chuàng)建項目

模板安裝成功后,我們可以通過 dotnet new 創(chuàng)建新項目双炕,在存放新項目的目錄下執(zhí)行如下命令:

dotnet new swa -n UserService

swaDemoServiceshortName狞悲,-n 后的 UserService 將替換 DemoService 名,這樣一條命令 UserService 服務的基礎架子就好了妇斤。

UserService

參考鏈接

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末摇锋,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子站超,更是在濱河造成了極大的恐慌荸恕,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,865評論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件死相,死亡現(xiàn)場離奇詭異融求,居然都是意外死亡,警方通過查閱死者的電腦和手機算撮,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,296評論 3 399
  • 文/潘曉璐 我一進店門生宛,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人肮柜,你說我怎么就攤上這事陷舅。” “怎么了审洞?”我有些...
    開封第一講書人閱讀 169,631評論 0 364
  • 文/不壞的土叔 我叫張陵莱睁,是天一觀的道長。 經(jīng)常有香客問我芒澜,道長缩赛,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 60,199評論 1 300
  • 正文 為了忘掉前任撰糠,我火速辦了婚禮酥馍,結果婚禮上,老公的妹妹穿的比我還像新娘阅酪。我一直安慰自己旨袒,他們只是感情好汁针,可當我...
    茶點故事閱讀 69,196評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著砚尽,像睡著了一般施无。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上必孤,一...
    開封第一講書人閱讀 52,793評論 1 314
  • 那天猾骡,我揣著相機與錄音,去河邊找鬼敷搪。 笑死兴想,一個胖子當著我的面吹牛,可吹牛的內容都是我干的赡勘。 我是一名探鬼主播嫂便,決...
    沈念sama閱讀 41,221評論 3 423
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼闸与!你這毒婦竟也來了毙替?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 40,174評論 0 277
  • 序言:老撾萬榮一對情侶失蹤践樱,失蹤者是張志新(化名)和其女友劉穎厂画,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體拷邢,經(jīng)...
    沈念sama閱讀 46,699評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡木羹,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,770評論 3 343
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了解孙。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,918評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡抛人,死狀恐怖弛姜,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情妖枚,我是刑警寧澤廷臼,帶...
    沈念sama閱讀 36,573評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站绝页,受9級特大地震影響荠商,放射性物質發(fā)生泄漏。R本人自食惡果不足惜续誉,卻給世界環(huán)境...
    茶點故事閱讀 42,255評論 3 336
  • 文/蒙蒙 一莱没、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧酷鸦,春花似錦饰躲、人聲如沸牙咏。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,749評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽妄壶。三九已至,卻和暖如春寄狼,著一層夾襖步出監(jiān)牢的瞬間丁寄,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,862評論 1 274
  • 我被黑心中介騙來泰國打工泊愧, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留伊磺,地道東北人。 一個月前我還...
    沈念sama閱讀 49,364評論 3 379
  • 正文 我出身青樓拼卵,卻偏偏與公主長得像奢浑,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子腋腮,可洞房花燭夜當晚...
    茶點故事閱讀 45,926評論 2 361

推薦閱讀更多精彩內容