VisualStudio2022制作多项目的解决方案模板
VisualStudio 2022 本身只提供了,一个项目生成模版,并没有多个项目一起打包生成模版,不过,可以使用nuget 跟dotnet来打包整个解决方案
第一步
如果没有nuget这个工具的话可以去官网下载,然后设置环境变量,这里就不多讲了,首先我们的项目解决方案编译没有问题之后清理一下,清理完了就可以关闭vs了, 然后再删除掉所有的obj文件侠, 还有.vs文件也删除掉

删除obj 批处理可以这样子写
@echooff
for /f "delims=" %%i in ('dir obj /s /b /ad') do rd /s /q "%%i"
清理的目的就是让打包的文件尽可能的小
第二步
开始写template.json
在当前解决方案的目录下创建一下.template.config文件侠,然后在文件侠里面新建一个文件叫template.json
编写template.json内容
{
"$schema": "http://json.schemastore.org/template",
"author": "作者名",
"classifications": [ "Web", "API" ],
"identity": "维一id",
"name": "这是模版名",
"shortName": "这是模版短名",
"description": "集成阿里oss文件存储,使用内部ioc及log,仅包含基础用户、角色、菜单、权限、用户与角色多对多、菜单与权限多对多、角色菜单权限多对多、参数表,使用efcore code first mysql.",
"tags": {
"language": "C#",
"type": "project"
},
"sourceName": "这是你解决方案的顶级命名空间,使用的时候会替换的内容,如M001",
"preferNameDirectory": true
}
编写完

第三步
编写在解决方案根目录新建文件以.nuspec后缀的文件比如M023.nuspec
编写M023.nuspec文件内容
<?xml version="1.0" encoding="utf-8"?> <package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd"> <metadata> <id>唯一id最好跟上面一样</id> <version>1.0.0</version> <description>集成阿里oss文件存储,使用内部ioc及log,仅包含基础用户、角色、菜单、权限、用户与角色多对多、菜单与权限多对多、角色菜单权限多对多、参数表,使用efcore code first mysql</description> <authors>作者</authors> <packageTypes> <packageType name="Template" /> </packageTypes> </metadata> </package>

第四步
清理好所有多余的文件,关闭所有打开的文件
打开cmd 定位 到解决方案目录
然后执行
nuget pack M023.nuspec
这样就会打包成一个
M023.1.0.0.nupkg
然后再执行
dotnet new install M023.1.0.0.nupkg
这样模版就创建完成了

第五步
打开vs 新建一个项目 ,在左边模板那里就可以看到自己创建的新模板了,或者输入自己的模板也可以快速找到,点下一步,然后这里填写的项目名 就是之前填写的"sourceName" 可以替换的内容,好了模板创建完成



VisualStudio2022制作多项目的解决方案模板的更多相关文章
- Visual Studio 2013新建ASP.NET项目使用Empty模板,在页面中使用验证控件出错的解决方案
Visual Studio 2013新建ASP.NET项目使用Empty模板,在页面中使用验证控件,运行页面,会出现如下的错误: 错误原因 VisualStudio 2012(或2013) WebFo ...
- Atitit.attilax重要案例 项目与解决方案与成果 v6 qa15
Atitit.attilax重要案例 项目与解决方案与成果 v6 qa15 1. attilax重要案例的分类(atiuse,auBackTech,bizImp)3 1.1. 两个book3 1.2. ...
- visual C++ 项目和解决方案的区别
项目: 项目是构成某个程序的全部组件的容器,该程序可能是控制台程序.基于窗口的程序或某种别的程序.程序通常由一个或多个包含用户代码的源文件,可能还要加上包含其它辅助数据的文件组成.某个 ...
- 嵌入式项目数据解决方案之sqlite
sqlite当前的版本为3
- springmvc+mybatis下载项目自带模板
1.首先如果要获取javaweb项目中的文件在哪,用到的代码:request.getSession().getServletContext().getRealPath("/WEB-INF/d ...
- 制作nodejs项目镜像,实现docker下的快速部署
前言 前面的文章<centos7+ docker1.12 实践部署docker及配置direct_lvm>中,已经实践了如何在centos7下安装,配置docker, 所以接下来就打算去制 ...
- 使用ecstore-sdk开发包制作易开店和启明星模板
前言: 尽管商派官网有模板开发教程,但是诸多方面太过笼统.我等平庸之辈,纵使细心研读,潜心修炼,亦未能品味练功境界,领悟其中真谛. 商派有云,此九阳真经不用您挥刀****本人却感觉此教程令人抓狂,无人 ...
- Windows下编译vpx获得各个项目VS2010解决方案的步骤
最近研究了一下几种常见的视频编码器:x264,x265,vpx.本文简单记录一下它们的编译方法. x264,x265,vpx这三个开源的视频编码器可以说是当今“最火”的视频编码器.x264现在占据着H ...
- VS2012 未找到与约束ContractName Microsoft.VisualStudio.Text.ITextDocumentFactoryService 未找到与约束ContractName,无法打开项目的解决方案 SQLyog 注册码
VS2012 未找到与约束ContractName Microsoft.VisualStudio.Text.ITextDocumentFactoryService 最近新换了系统还真是问题多多呀! ...
- 使用低版本的VS打开高版本项目的解决方案(以VS2008打开VS2010开发的项目为例)
使用低版本的VS打开高版本项目的解决方案,这里以VS2008打开VS2010开发的项目为例. 右键项目的sln文件以记事本的方式打开: 将对应的前两列版本各降到对应的版本,这边的11.00改为10.0 ...
随机推荐
- 浅聊java运行机制
Java程序运行机制 首先要清楚运行机制一般有两种 解释型 编译型 解释型: 顾名思义,就像有个人在旁边给你解释东西一样.比如看一本英文书,英语老师在旁边一句一句给你翻译解释.在写源代码时,每写一个 ...
- 【JDBC第6章】数据库事务理论
第6章:数据库事务 6.1 数据库事务介绍 事务:一组逻辑操作单元,使数据从一种状态变换到另一种状态. 事务处理(事务操作):保证所有事务都作为一个工作单元来执行,即使出现了故障,都不能改变这种执行方 ...
- Code First 初始化数据时发生异常
问题重现 用Entity Framework的Code First默认生成的数据库文件被我直接删除了, 然后不管怎么重新编译等等, 运行后总是会报错如下: 解决方案同下 Cannot attach t ...
- 如何定位 Druid & HikariCP 连接池的连接泄漏问题?
背景 最近碰到一个 case,一个 Java 应用无法获取新的数据库连接,日志中出现了以下错误: com.alibaba.druid.pool.GetConnectionTimeoutExceptio ...
- IDEA构建Maven项目生成的文件说明(.mvn、mvnw、mvnw.cmd、.gitignore、.iml、.idea、pom.xml)
IDEA构建的maven+springBoot项目结构如下: 1..gitignore:分布式版本控制系统git的配置文件,意思为忽略提交 在 .gitingore 文件中,遵循相应的语法,即在每一行 ...
- 前端ai工具v0使用配置
资料 ai工具Vo Installation - Tailwind CSS 以vue3 + sass为例,配置如下 安装tailwindcss npm install -D tailwindcss n ...
- 题解:CF361B Levko and Permutation
前置芝士--最大公约数 - OI Wiki 题目其实很简单,我们可以知道一些最大公约数的性质: 有一个数 xxx,则: gcd(x,x−1)=1gcd(1,x)=1\gcd(x,x-1)=1 \\ ...
- maven-helper解决依赖冲突
idea中可以使用maven-helper解决依赖冲突
- 【HUST】论于渊《Orange‘s:一个操作系统的实现》第三章中PagingDemoProc的必要性,是否可以直接调用LinearAddrDemo?
相关代码如下(第三章pmtest9a.asm改写): LinearAddrDemo equ 00401000h ProcHust equ 00401000h ProcIS19 equ 00501000 ...
- PC端自动化测试实战教程-4-pywinauto 操作PC端应用程序窗口 - 上篇(详细教程)
1.简介 前几篇通过宏哥的讲解和分享,已经知道如何将PC端的应用程序启动,以及如何连接已启动的应用程序,那么启动和连接上之后呢?不用说当然是操作应用程序了,怎么操作呢?请听宏哥给你娓娓道来,所以今天主 ...