C# WinForm自制项目模板入坑记

1. 创建模板配置

1.1 在项目目录中创建.template.config文件夹
1.2 创建一个名为“template.json” 的新文件

{
  "author": "5DThinking",
  "classifications": [ "WinForm" ],  //对应模板的Tags
  "identity": "5DThinking.Demo",  //模板的唯一名称
  "name": "5DThinking.Demo",  //对应模板的Templates
  "shortName": "abc",  //【修改】短名称,使用 dotnet new <shortName> 安装模板时的名称
  "tags": {
    "language": "C#",
    "type": "project"
  }
  "sourceName": "xxx",  // 【修改】在使用 -n 选项时,会替换模板中项目的名字xxx
  "preferNameDirectory": true  // 可选,添加目录
}

注意:"sourceName": "xxx"指明模板中将要被替换的字符串

2. 安装模板

运行命令dotnet new -i .以安装位于当前文件夹的模板

3. 测试模板

运行命令dotnet new abc -n 5DThinking.Test -o TestTemplate,新项目成功在TestTemplate目录下生成,名字也都统一改为5DThinking.Test

4. 遇到的坑

现在运行新项目,出现一堆错误,主要是两类:1.NuGet包还原问题 2..resx文件报错
解决办法:

  1. 从模板项目lib目录中复制.dll文件到新项目相应目录中并覆盖,在项目中重新引用
  2. 从模板项目复制.resx文件到新项目相应目录中并覆盖

注:这个解决办法是野路子,正规的按照微软官网上的做。

原文地址:https://www.cnblogs.com/zhaoshujie/p/12516072.html

时间: 2024-10-28 10:05:28

C# WinForm自制项目模板入坑记的相关文章

Spring Cloud Gateway入坑记

Spring Cloud Gateway入坑记 前提 最近在做老系统的重构,重构完成后新系统中需要引入一个网关服务,作为新系统和老系统接口的适配和代理.之前,很多网关应用使用的是Spring-Cloud-Netfilx基于Zuul1.x版本实现的那套方案,但是鉴于Zuul1.x已经停止迭代,它使用的是比较传统的阻塞(B)IO + 多线程的实现方案,其实性能不太好.后来Spring团队干脆自己重新研发了一套网关组件,这个就是本次要调研的Spring-Cloud-Gateway. 简介 Spring

conda命令入坑记

conda命令入坑记 TypeError: LoadLibrary() argument 1 must be str, not None 网上太多的资料,大多都是在讲path的设置,试来试去根本无效,反而绕的晕的不行!!还好!有两篇文章将的还靠点边,在加上自己的理解,终于------- windows anaconda TypeError: LoadLibrary() argument 1 must be str, not None [Debug] - taoqick的专栏 - CSDN博客 c

ionic入坑记记录

0.java1.8安装各种环境的配置 1.没有安装过npm 1.1 安装nodejs自带此物. 1.2 不希望npm install -g都在c盘.设置全局路径 path中是X:\某个文件夹\你的文件夹\node_modules 跟npm config ls 中的prefix要一样 另外要配置 npm prefix npm cache 在path中添加prefix的路径 配置gradle,下一个合用的gradle版本,找一个地方解压缩出来.然后在path中添加 X:\在哪里\gradle\bin

Android项目开发填坑记-so文件引发的攻坚战

原文地址 http://blog.csdn.net/ys743276112/article/details/50903905 java.lang.UnsatisfiedLinkError 解决方法 主要内容 安装包在只编译了armeabi,没有x86.arm64-v8a,是如何运行在各种处理器的手机上的? https://www.zhihu.com/question/36893314/answer/69467752 arm64-v8a是可以向下兼容的,但前提是你的项目里面没有arm64-v8a的

gRPC入坑记

概要 由于gRPC主要是谷歌开发的,由于一些已知的原因,gRPC跑demo还是不那么顺利的.单独写这一篇,主要是gRPC安装过程中的坑太多了,记录下来让大家少走弯路. 主要的坑: 如果使用PHP.Python开发gRPC的客户端,需要编译gRPC命令行工具,生成proto的代码生成插件,否则proto里定义的service无法编译出来.编译需要使用GCC4.8级以上版本,否则报不支持C++11.然后需要龟速下周grpc源码,并下载一大堆第三方依赖.这个过程非常痛苦.使用golang.java的可

vue项目打包踩坑记

基于webpack+vue-cli下的vue项目打包命令是 npm run build ,等待打包完成后在根目录生成dist文件夹,里面包含了所有项目相关的内容. 注意:需要完整版的vue-cli项目,即通过vue init webpack初始化的项目才可以,通过vue init webpack-simple初始化的项目没有打包文件,无法打包.目录结构如下 vue init webpack初始化的目录结构,打包依赖build和config文件夹的配置,static存放静态文件 vue init

Android 项目开发填坑记 - 获取系统语言(兼容7.0)

如果移动端访问不佳,请访问–> Github版 关键词:Android7.0 .系统语言 .顺序不一致 获取系统当前语言是一个比较常用的功能,在 Android 7.0 系统上旧函数获取到的当前系统语言并不正确,或者说从 Android 7.0 起,Android 系统语言的规则变了. 背景 下面是未适配 Android 7.0 的代码: // 获取 Locale 的方式有二 Locale locale = getResources().getConfiguration().locale; Lo

VS项目模板文件位置

目录: D:\Users\lyn\Documents\Visual Studio 2012\Templates\ProjectTemplates 模板文件完整路径: D:\Users\lyn\Documents\Visual Studio 2012\Templates\ProjectTemplates\WinForm测试项目模板.zip

入坑cordova

因项目需要入坑cordova,奔跑吧骚年,目前只是要求安卓平台,下面都是以安卓为例 最好的学习资料还是官网. https://cordova.apache.org/ https://cordova.apache.org/plugins/ 官网文档(中文版无力吐槽)   https://cordova.apache.org/docs 中文版文档   http://cordova.axuer.com/docs/zh-cn/latest/guide/overview/index.html 一.安装 j