如何利用 Visual Studio 自定义项目或工程模板_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > 如何利用 Visual Studio 自定义项目或工程模板

如何利用 Visual Studio 自定义项目或工程模板

 2014/5/5 15:34:21  stg609  博客园  我要评论(0)
  • 摘要:在开发项目的时候,由其是商业性质的大型项目时,往往需要在每个代码文件上都加上一段关于版权、开发人员的信息,并且名称空间上都需要带有公司的标志。这个时候,是选择在开发的时候手动添加还是自动生成呢?我们其实完全可以利用VisualStudio提供的模板工具自定义一套专属的模板。自定义项目模板假如当我添加一个.cs文件后,我希望默认添加的文件要看起来像这个样子:如何实现1.随意新建一个工程或使用一个已经存在的工程,在该项目内新添加一个普通的class文件,打开后应该和下图长得差不多。2.修改这个文件
  • 标签:模板 Visua Visual Studio 项目 利用 自定义

  在开发项目的时候,由其是商业性质的大型项目时,往往需要在每个代码文件上都加上一段关于版权、开发人员的信息,并且名称空间上都需要带有公司的标志。这个时候,是选择在开发的时候手动添加还是自动生成呢?

 

  我们其实完全可以利用 Visual Studio 提供的模板工具自定义一套专属的模板。

 

自定义项目模板

  假如当我添加一个 .cs 文件后,我希望默认添加的文件要看起来像这个样子:

 

  如何实现

  1. 随意新建一个工程或使用一个已经存在的工程,在该项目内新添加一个普通的 class 文件,打开后应该和下图长得差不多。

DBA5043E83CA.jpg" alt="" />

 

  2. 修改这个文件,让它看起来和我们的目标模板越像越好。

 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 }

 

  有一部分信息,例如时间,是没办法在写模板的时候就知道的,这个只能在生成文件的时候才能知道。此类动态的数据,Visual Studio 提供了一堆占位符供我们使用。 

上图只是其中一部分,更多请查看文后的参考资源

 

  3. 导出模板

  3.1 选择 文件 / 导出模板...

 

  3.2 选择项目模板

 

  3.3 选择我们要导出的模板

 

  3.4 不用勾选

 

  3.5 修改模板名称等信息,同时勾选 “自动导入到 Visual Studio ” 中

 

  3.6 点击完成,Visual Studio 便开始生成模板 (zip文件)

 

  4. 检查下效果

新增文件的时候,就会找到我们自己的模板

 

文件中的占位符已经被正确替换

 

自定义工程模板

  整个过程和自定义项目模板类似,只不过自定义工程模板的时候需要根据预期的模板工程新建一个对应的工程。这里我以类库项目为例进行介绍。

  因为是针对整个工程来说,所以记得把所有需要修改的文件都要进行修改,修改方式参考自定义项目模板。

修改代码

 

选择工程模板

 

填写信息

 

  当下一次添加新的工程时候,就会发现新的模板。

文件中的信息已经被正确替换了

 

 

参考资源

  模板参数

 

  本文来源于 《如何利用 Visual Studio 自定义项目或工程模板》

发表评论
用户名: 匿名