首页 > 其他分享 >DotNet 自定义模板

DotNet 自定义模板

时间:2023-06-12 18:23:32浏览次数:54  
标签:templates 自定义 artizan abp template DotNet microservice 模板

目录

DotNet 自定义模板

创建目录结构

下面以 artizan-abp-microservice 项目为例,

解决方案结构:

基于该项目创建 dotnet 模板,
首先,创建文件夹 templates,所有的项目模板将保存于此。

从gitee 下载 artizan-abp-microservice 项目代码:

git clone [email protected]:Artisan-k/artizan-abp-microservice.git

提示:

之所以使用 git clone 是过滤掉不必要的文件和文件夹,比如: bin文件,node_modles,若使用本地文件,还得清理这些文件和文件夹,影响本地开发。

把项目代码移动到 templates/artizan-abp-microservice/content 目录下,至此目录结构如下:

├── templates                          //  用来存放所有的模板
│   ├── artizan-abp-microservice       //  artizan-abp-microservice 模板全部内容
│   │    ├── content                   //  存放 Code 项目代码,可直接运行
│   │    │    ├── apps          
│   │    │    ├── gateways        
│   │    │    ├── services      
│   │    │    ├── ...         
│   │    │    └── MsOnAbp.sln     
│   │    │ 
│   │    ├── LICENSE.md    存放版本许可信息,如果不添加,后边会警告
│   │    │ 
│   │    └── 
│   │
│   └── 

template.json

创建文件夹templates\artizan-abp-microservice\content\.template.config

然后在其中创建名为:template.json的定义模板的配置文件。

详细信息可以查看官网 :https://docs.microsoft.com/zh-cn/dotnet/core/tools/custom-templates

到目前为止,目录结构如下:

├── templates                          //  用来存放所有的模板
│   ├── artizan-abp-microservice       //  artizan-abp-microservice 模板全部内容
│   │    ├── content                   //  存放 Code 项目代码,可直接运行
│   │    │    ├── apps          
│   │    │    ├── gateways        
│   │    │    ├── services      
│   │    │    ├── ...         
│   │    │    └── MsOnAbp.sln   
│   │    │    ├── .template.config
│   │    │        ├── template.json
│   │    ├── LICENSE.md    存放版本许可信息,如果不添加,后边会警告
│   │    │ 
│   │    └── 
│   │
│   └── 

修改其内容为:

{
  "$schema": "http://json.schemastore.org/template",
  "author": "majiangfang",
  "classifications": ["Artizan", "Microservice", "ABP", "C#"],
  "identity": "Artizan.Abp.Microservice.Template",
  "sourceName": "MsOnAbp",
  "name": "Artizan ABP Microservice Template",
  "description": "Artizan ABP Microservice Template",
  "tags": {
    "language": "C#",
    "type": "solution"
  },
  "shortName": "artizan-abp-ms",
  "preferNameDirectory": true
}

生成本地模板

然后执行如下命令,生成本地模板:

> dotnet new install F:\05-workspace\dev\01-lab\abp-framework\templates\artizan-abp-microservice


将安装以下模板包:
   F:\05-workspace\dev\01-lab\abp-framework\templates\artizan-abp-microservice

成功: F:\05-workspace\dev\01-lab\abp-framework\templates\artizan-abp-microservice 已安装以下模板:
模板名                             短名称          语言  标记
---------------------------------  --------------  ----  ---------------------------
Artizan ABP Microservice Template  artizan-abp-ms  [C#]  Artizan/Microservice/ABP/C#

注意:短名称:artizan-abp-ms,后面我们将使用它来生成项目

使用本地模板生成项目

使用本地模板的短名称:artizan-abp-ms 来生成项目,执行如下命令生成一个项目:

> dotnet new artizan-abp-ms -n IotPlamform
已成功创建模板“Artizan ABP Microservice Template”。

生成的项目如下:

1686564526307

解决方案结构:

1686564565137

发布到 Nuget

(略)

参考资料

从壹开始前后端分离 39 || 想创建自己的dotnet模板么?看这里 - 老张的哲学 - 博客园 (cnblogs.com)

标签:templates,自定义,artizan,abp,template,DotNet,microservice,模板
From: https://www.cnblogs.com/easy5weikai/p/17475792.html

相关文章

  • 自定义SpringBoot的starter
    1.自定义starter名为my-starter-spring-boot-starter1.1idea中创建一个maven模块groupId为com.exampleartifactId为my-starter-spring-boot-starter起名规范:1.官方starter是spring-boot-starter-xxxx2.自定义starter是xxx-spring-boot-starter依赖如下<?xmlversion="1.0......
  • SpringBoot多模块项目搭建以及搭建基础模板
    多模块项目搭建目录多模块项目搭建1.父项目pom文件编辑2.创建子模块1.父项目pom文件编辑<!--1.父工程添加pom格式--><packaging>pom</packaging><!--定义子模块--><modules><module>walker-service</module><module>walker-utils&......
  • 012 数据库学习笔记--自定义函数
    自定义函数:根据自己的需要,自定义一些函数分类:标量函数、内嵌表值函数、多声明表值函数标量函数:对单一值的操作,返回单一值;包含beginend创建的时候,指定了函数所有体,调用时也必须指定函数所有者调用时,如果函数中指定了默认值,调用的时候,可使用默认值default代替在语法上r......
  • python使用HTTP隧道代理代码示例模板
    以下是使用HTTP隧道代理的Python代码示例模板:```pythonimportrequests#设置代理服务器地址和端口号proxy_host="your_proxy_host"proxy_port="your_proxy_port"#设置代理服务器的用户名和密码(如果需要)proxy_username="your_proxy_username"proxy_password="your_proxy_p......
  • PHP使用HTTP隧道代码示例模板
    以下是使用PHP实现HTTP隧道的代码示例模板:```php<?php//目标网站的URL$targetUrl='ExampleDomain';//获取客户端请求的HTTP方法和请求头$method=$_SERVER['REQUEST_METHOD'];$headers=getallheaders();//创建与目标网站的连接$ch=curl_init();curl_setopt($ch,CURLOPT......
  • 热门自定义报表系统推荐,哪款自定义报表系统更功能更强大?
    随着企业管理的日益复杂,越来越多的企业需要一款高效、灵活、易用的自定义报表系统来满足其各种报表制作和数据分析需求。然而,在众多自定义报表系统中,哪款更加强大?今天,我将向大家推荐5款热门自定义报表系统,并详细介绍其中最具代表性的VeryReport自定义报表系统。1.VeryReport编辑搜......
  • 微信小程序 自定义弹窗
    效果图wxml<viewclass="toastbd"catchtouchmove='preventTouchMove'wx:if='{{showModal}}'></view><viewclass="mytoast"catchtouchmove='preventTouchMove'wx:if='{{showModal}}'>......
  • Dynamics 365 访问团队模板配置
    1、 访问团队模板实体启用访问团队功能  设置>安全性>访问团队模板 在实体窗体中添加子网格 在该实体中添加用户就可以访问 也可以通过代码创建访问用户  ......
  • 医院项目中,如何使用自定义注解?
    你好,我是田哥不管是项目中,还是各种框架中,都有着大量的注解。而且,我们在项目开发中,通常一个注解就能搞定好多事情,尤其是在Spring大家族里,注解那是被玩的飞起,另外其他框架中不少使用。下面给大家罗列一下常用注解:1、@Configuration标识当前类是配置类2、@ComponentScan包扫描......
  • 前端 vue 自定义导航栏组件高度及返回箭头 自定义 tabbar 图标
    前端vue自定义导航栏组件高度及返回箭头自定义tabbar图标,下载完整代码请访问uni-app插件市场地址:https://ext.dcloud.net.cn/plugin?id=12986效果图如下:使用方法//page.json采用矢量图标设置返回箭头,{"path":"pages/Home/Home",......