前言 为何要这么做
1、对比着之前的项目结构,在VistulStudio中手动创建一个空的解决方案,从零开始,一点一点搭建。// 麻烦之大,可想而知
2、通过dotnet cli 命令来创建空项目,然后手动。// 会简化一丢丢,但仍需要一层一层的创建类库;
3、把Demo工程代码里拷贝到U盘,或者上传到云盘,然后下载下来,改吧改吧。// 寻找过程很麻烦,依赖代码承载工具;
4、把Demo工程代码 Pull 到 Github 上,在别的地方直接 Clone ,然后改吧改吧。 // 开源出源码,私密性不强;
给大家演示下 我们最终需要实现的效果
一、准备项目模板
二、将模板导入到dotnet 环境中
1、文件结构如下
├── temple // 用来存放所有的模板
│ ├── CoreTemple // BlogCore模板全部内容
│ │ ├── content // 存放Code 项目代码,可直接运行
│ │ │ ├── ZQCY.Appointment.WebAPI
│ │ │ ├── .
│ │ │ ├── .
│ │ │ ├── .
│ │ │ ├── ZQCY.Appointment.Services
│ │ │ └── ZQCY.Appointment.WebAPI.sln
│ │ │
│ │ ├── license // 存放版本许可信息,如果不添加,后边会警告,文章后边会提到
│ │ │ └── license.txt
│ │ │
│ │ └── 其他待定 // 这里文章后边会打包的时候用到
│ │
│ └── DDDTemple // DDD模板信息
2、用于定义模板的配置文件 (template.json)
{
"$schema": "http://json.schemastore.org/template", //template.json 文件的 JSON 架构,可以不要该键值对
"author": "contione", //必填!模板创建者
"classifications": [ "Web/WebAPI" ], //必填,这个对应模板的Tags,其他的比如 [ "Common", "Console" ],
"name": "Contione Dotnet", //必填,这个是模板名,比如ASP.NET Core Web API
"identity": "ZQCY.Appointment.Template", //可选,模板的唯一名称
"shortName": "contione", //必填,这个对应模板的短名称,比如webapi
"tags": {
"language": "C#",
"type": "project"
},
"sourceName": "ZQCY.Appointment", // 可选,要替换的名字,这个就是模板的项目名,以后新建的时候,会把这个名字替换成其他,比如HelloBlog(警告!这里不要写一些专用词汇,比如app呀,net呀,core之类的)
"preferNameDirectory": true // 可选,添加目录
}
3、使用文件系统分发
安装模板: dotnet new -i D:\testdotnet\temple\CoreTemple
4、使用dotnet新模板创建一个项目
donet new contione -n 项目名称
三、发布到nuget
版权声明:本文由Contione原创出品,转载请注明出处!
暂无评论,大侠不妨来一发?