如何利用 Visual Studio 自定义项目或工程模板(转载)
2014-06-16 11:04
387 查看
在开发项目的时候,由其是商业性质的大型项目时,往往需要在每个代码文件上都加上一段关于版权、开发人员的信息,并且名称空间上都需要带有公司的标志。这个时候,是选择在开发的时候手动添加还是自动生成呢?
我们其实完全可以利用 Visual Studio 提供的模板工具自定义一套专属的模板。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/a606e9fba2208c747037a7455621ba5a.jpg)
如何实现
1. 随意新建一个工程或使用一个已经存在的工程,在该项目内新添加一个普通的 class 文件,打开后应该和下图长得差不多。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/388f6bc9362007cca989a436a9165da4.jpg)
2. 修改这个文件,让它看起来和我们的目标模板越像越好。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/83ea66a4aa8c2fd88fc662e36e6ab80b.jpg)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201603/69c5a8ac3fa60e0848d784a6dd461da6.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201603/69c5a8ac3fa60e0848d784a6dd461da6.gif)
有一部分信息,例如时间,是没办法在写模板的时候就知道的,这个只能在生成文件的时候才能知道。此类动态的数据,Visual Studio 提供了一堆占位符供我们使用。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/5cd4dd2df9bcdbea46b516c7bc1287ba.jpg)
上图只是其中一部分,更多请查看文后的参考资源
3. 导出模板
3.1 选择 文件 / 导出模板...
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/e9420f49ee15e6b69bbe9ca65f90463f.jpg)
3.2 选择项目模板
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/2906eae301a21a3d7d8d22ea8762826c.jpg)
3.3 选择我们要导出的模板
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/97756b1f585f9ea7941f7a198d365c66.jpg)
3.4 不用勾选
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/daf29e053494bb287ce34b2155645d81.jpg)
3.5 修改模板名称等信息,同时勾选 “自动导入到 Visual Studio ” 中
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/c63944209d50d10ea9d34e714c331f15.jpg)
3.6 点击完成,Visual Studio 便开始生成模板 (zip文件)
4. 检查下效果
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/3659d14e13f2b6c4deb870ceb576800e.jpg)
新增文件的时候,就会找到我们自己的模板
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/e65ab5b4f6e1ff1d1f40a63235a0c354.jpg)
文件中的占位符已经被正确替换
因为是针对整个工程来说,所以记得把所有需要修改的文件都要进行修改,修改方式参考自定义项目模板。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/fab50a44f4dbca8fbac297f7d05e934d.jpg)
修改代码
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/3308c959a23f4ae740b9959abcd3ad9c.jpg)
选择工程模板
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/33a5010f7c339184273f02cc6bd2258b.jpg)
填写信息
当下一次添加新的工程时候,就会发现新的模板。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/31ac1455a24c908a23744f7685afbcc6.jpg)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/cd3a4c411e2b058a4b62b883f061e9b5.jpg)
文件中的信息已经被正确替换了
我们其实完全可以利用 Visual Studio 提供的模板工具自定义一套专属的模板。
自定义项目模板
假如当我添加一个 .cs 文件后,我希望默认添加的文件要看起来像这个样子:![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/a606e9fba2208c747037a7455621ba5a.jpg)
如何实现
1. 随意新建一个工程或使用一个已经存在的工程,在该项目内新添加一个普通的 class 文件,打开后应该和下图长得差不多。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/388f6bc9362007cca989a436a9165da4.jpg)
2. 修改这个文件,让它看起来和我们的目标模板越像越好。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/83ea66a4aa8c2fd88fc662e36e6ab80b.jpg)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201603/69c5a8ac3fa60e0848d784a6dd461da6.gif)
1 #region 版权信息 2 /* 3 * ----------------------------------------------------------- 4 * Copyright (c) 2014 chenxu.me All rights reserved. 5 * ----------------------------------------------------------- 6 * 7 * 创建者: $username$ 8 * 创建时间: $time$ 9 * CLR: $clrversion$ 10 * 11 */ 12 #endregion 13 14 using System; 15 using System.Collections.Generic; 16 using System.Linq; 17 using System.Text; 18 using System.Threading.Tasks; 19 20 namespace Charley.$rootnamespace$ 21 { 22 class Class1 23 { 24 } 25 }
![](https://oscdn.geek-share.com/Uploads/Images/Content/201603/69c5a8ac3fa60e0848d784a6dd461da6.gif)
有一部分信息,例如时间,是没办法在写模板的时候就知道的,这个只能在生成文件的时候才能知道。此类动态的数据,Visual Studio 提供了一堆占位符供我们使用。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/5cd4dd2df9bcdbea46b516c7bc1287ba.jpg)
上图只是其中一部分,更多请查看文后的参考资源
3. 导出模板
3.1 选择 文件 / 导出模板...
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/e9420f49ee15e6b69bbe9ca65f90463f.jpg)
3.2 选择项目模板
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/2906eae301a21a3d7d8d22ea8762826c.jpg)
3.3 选择我们要导出的模板
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/97756b1f585f9ea7941f7a198d365c66.jpg)
3.4 不用勾选
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/daf29e053494bb287ce34b2155645d81.jpg)
3.5 修改模板名称等信息,同时勾选 “自动导入到 Visual Studio ” 中
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/c63944209d50d10ea9d34e714c331f15.jpg)
3.6 点击完成,Visual Studio 便开始生成模板 (zip文件)
4. 检查下效果
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/3659d14e13f2b6c4deb870ceb576800e.jpg)
新增文件的时候,就会找到我们自己的模板
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/e65ab5b4f6e1ff1d1f40a63235a0c354.jpg)
文件中的占位符已经被正确替换
自定义工程模板
整个过程和自定义项目模板类似,只不过自定义工程模板的时候需要根据预期的模板工程新建一个对应的工程。这里我以类库项目为例进行介绍。因为是针对整个工程来说,所以记得把所有需要修改的文件都要进行修改,修改方式参考自定义项目模板。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/fab50a44f4dbca8fbac297f7d05e934d.jpg)
修改代码
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/3308c959a23f4ae740b9959abcd3ad9c.jpg)
选择工程模板
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/33a5010f7c339184273f02cc6bd2258b.jpg)
填写信息
当下一次添加新的工程时候,就会发现新的模板。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/31ac1455a24c908a23744f7685afbcc6.jpg)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202004/16/cd3a4c411e2b058a4b62b883f061e9b5.jpg)
文件中的信息已经被正确替换了
相关文章推荐
- 如何利用 Visual Studio 自定义项目或工程模板
- 如何利用 Visual Studio 自定义项目或工程模板
- Visual Studio 自定义项目或工程模板
- [Visual Studio] 自定义项目或工程模板
- 在VisualStudio2013,2015中如何安装自定义项目模板
- 如何利用Visual Studio创建自己的模板
- Visual Studio 2008 自定义项目模板
- 如何在VS2008中使自定义模板实现与项目默认模板同样效果
- 如何:使用向导来处理项目模板 【转载】
- VISUAL STUDIO 2008 自定义项目模板
- visual studio 2010 中VC++自定义项目模板
- 如何在VS2008中使自定义模板实现与项目默认模板同样效果
- Visual Studio 2008 自定义项目模板
- Flex Gumbo中如何利用itemRenderer属性自定义FxList内项目的例子
- 在VisualStudio2013,2015中如何安装自定义项目模板
- Visual Studio 自定义项目模板
- 如何:使用向导来处理项目模板 【转载】
- 如何在VS2008中自定义多项目模板
- visual studio 2010 中VC++自定义项目模板
- 利用Visual Studio SDK创建项目模板