路径:C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\ItemTemplatesCache\CSharp\Code\2052\Class

//**********************************************************************
//
// 文件名称(File Name):
// 功能描述(Description):
// 作者(Author):
// 日期(Create Date): $time$
//
// 修改记录(Revision History):
// R1:
// 修改作者:
// 修改日期:
// 修改理由:
//
// R2:
// 修改作者:
// 修改日期: $time$
// 修改理由:
//
//**********************************************************************
using System;
using System.Collections.Generic;
$if$ ($targetframeworkversion$ >= 3.5)using System.Linq;
$endif$using System.Text;
$if$ ($targetframeworkversion$ >= 4.5)using System.Threading.Tasks;
$endif$
namespace $rootnamespace$
{
class $safeitemrootname$
{
}
}

vs中的///文档注释类似java中/** */文档注释。能自动的生成帮助文档。

如果我想在每次创建文件时,自动生成文档注释(注意是自动生成文档注释而不是帮助文档),如下面的代码,需要设置VS的模板,新创建的cs类文件会根据模板的样子进行生成。常用的VS文件模板有3个,分别是Class.zip、Interface.zip、From.zip.

我以Class.zip模板设置为例,模板在vs2010下的路径

C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\ItemTemplatesCache\CSharp\Code\2052\Class.zip

这里和网上的说法有些不同,网上省了\Code\目录,也许vs2008没有这个目录。

双击打开Class.zip直接编辑Class.cs,不用解压缩,编辑完保存。模板代码设置如下:

 1 /* ==============================================================================
2 * 功能描述:$safeitemrootname$
3 * 创 建 者:$username$
4 * 创建日期:$time$
5 * ==============================================================================*/
6 using System;
7 using System.Collections.Generic;
8 $if$ ($targetframeworkversion$ >= 3.5)using System.Linq;
9 $endif$using System.Text;
10
11 namespace $rootnamespace$
12 {
13 /// <summary>
14 /// $safeitemrootname$
15 /// </summary>
16 public class $safeitemrootname$
17 {
18 }
19 }

这里$var$ 都是系统的变量,模板参数是要区分大小写的,大家需要注意。系统提供的可用的参数如下:

参数  说明 clrversion 公共语言运行库 (CLR) 的当前版本。

GUID [1-10] 用于替换项目文件中的项目 GUID 的 GUID。最多可以指定 10 个唯一的 GUID(例如,guid1))。

itemname 用户在添加新项对话框中提供的名称。

machinename 当前的计算机名称(例如,Computer01)。

projectname 用户在新建项目对话框中提供的名称。

registeredorganization HKLM\Software\Microsoft\Windows NT\CurrentVersion\RegisteredOrganization 中的注册表项值。

rootnamespace 当前项目的根命名空间。此参数用于替换正向项目中添加的项中的命名空间。

safeitemname 用户在“添加新项”对话框中提供的名称,名称中移除了所有不安全的字符和空格。

safeprojectname 用户在“新建项目”对话框中提供的名称,名称中移除了所有不安全的字符和空格。

time 以 DD/MM/YYYY 00:00:00 格式表示的当前时间。

userdomain 当前的用户域。

username 当前的用户名。

year 以 YYYY 格式表示的当前年份。

保存并关闭,完成模板设置,会发现新创建的类文件如您所愿。

其他vs版本的设置步骤相同。在vs根目录下搜索Class.zip等模板文件的物理路径

ItemTemplates与ItemTemplatesCache的区别在于,如果您设置了ItemTemplates下的模板,需要在VS命令行中运行devenv /setup 命令  ,以Itemtemplates模板生成ItemTemplatesCache的模板,也就是说ItemTemplatesCache模板的设置会被原始的Itemtemplates模板还原。所以最好不要轻易改变Itemtemplates模板下的内容(他不能还原)。

修改VS自带的模版文件
在新建一个.cs类时,想要自定义其模版中的代码,修改类的访问权限,可以通过修改安装目录中的模版文件来实现。找到如下的路径,然后找到相应的模版文件进行修改。
D:\Program Files\visual-studio\Common7\IDE\ItemTemplates\CSharp\Code
注意,要把zip文件拷贝出来,然后解压,修改其中的模版文件Class.cs,然后再打包成zip文件去目录中覆盖原来的文件,而不能是在目录中直接用解压软件打开zip文件然后修改其中Class.cs的内容,因为这样,只是修改了内存中的内容,而没有真正修改zip文件中Class.cs的内容 http://www.cnblogs.com/mcgrady/p/3749584.html
http://www.cnblogs.com/anderslly/archive/2009/01/18/vs2008-templates.html

更改vs自带的模板的更多相关文章

  1. 怎么用MindManager自带的模板和设计画思维导图

    小编知道大家平时工作学习都很忙,思维导图能完成的效率越高越好.所以今天,小编就为大家介绍两个能高效使用思维导图软件完成制作思维导图的小技巧.保证内容充实美观,还不费时间. 一.使用模板 打开MindM ...

  2. zabbix利用自带的模板监控mysql数据库

    zabbix利用自带的模板监控mysql数据库 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 有些东西你不会的时候觉得它特别难,但是当你去做的时候就发现如此的简单~zabbix功能 ...

  3. wordpress学习三:wordpress自带的模板学习

    在<学习二>里,大概说了下怎么去查找模板,本节我们以一个简单的模板为例子,继续说说wordpress的模板机制,看看做一个自己的模板需要哪些知识点. 页面模板渲染 wordpress的模板 ...

  4. 【UOJ #79】一般图最大匹配 带花树模板

    http://uoj.ac/problem/79 带花树模板,做法详见cyb的论文或fhq的博客. 带花树每次对一个未盖点bfs增广,遇到奇环就用并查集缩环变成花(一个点),同时记录每个点的Next( ...

  5. zabbix自带的模板监控mysql

    科技小能手 2017-11-12 1208浏览量 简介: zabbix官方支持监控MySQL,但直接使用默认的模板是不可用的,还需要经过额外的设置才可以使用.如果只需要对mysql数据库做简单的监控, ...

  6. js 实现淘宝放大镜功能,可更改配置参数 带完整版解析代码[magnifier.js]

    前言:         本人纯小白一个,有很多地方理解的没有各位大牛那么透彻,如有错误,请各位大牛指出斧正!小弟感激不尽.         本篇文章为您分析一下原生JS写淘宝放大镜效果 基本功能: 运 ...

  7. js 实现淘宝无缝轮播图效果,可更改配置参数 带完整版解析代码[slider.js]

    前言:         本人纯小白一个,有很多地方理解的没有各位大牛那么透彻,如有错误,请各位大牛指出斧正!小弟感激不尽.         本篇文章为您分析一下原生JS写淘宝无缝轮播图效果 需求分析: ...

  8. ProgressDialog(四)——更改系统自带ProgressDialog文字大小

    MainActivity如下面: package com.example.ttt; import android.app.Activity; import android.app.ProgressDi ...

  9. JavaMail 实现发送验证码,带验证码模板的

    package util; import java.io.File; import java.io.FileOutputStream; import java.util.Properties; imp ...

随机推荐

  1. PHP链式操作输出excel(csv)

    工作中经常会遇到产品运营让导出一些简单的比较规范的数据,这时候要是有一个简单的方法可以用就简单多了.下面是我的一个输出简单的excel(csv)的方法类,用到了链式操作.说到链式操作,在jquery中 ...

  2. C#位操作与枚举的应用

    看到代码里有用位操作来判断条件的,以前没有这么用过,做个笔记: int add = 2; int modify = 4; int delete = 8; Console.WriteLine((add ...

  3. C++ 之 const references

    extraction from The C++ Programming Language 4th. ed., Section 7.7 References, Bjarne Stroustrup To ...

  4. WINDBUG常用命令

    配置: File->Symbol path-> SRV*C:\symbols*http://msdl.microsoft.com/download/symbols 载入sos.dll  执 ...

  5. UVA11181Probability|Given(条件概率)

    题目链接 紫书P327 题意:有n个人准备去超市逛,其中第i个人买东西的概率是 Pi .逛完以后你得知有 r 个人买了东西.根据这一信息,计算每个人实际买东西的概率.输入 n ( 1 <= n ...

  6. Glusterfs分布式存储介绍(一)

    环境准备 1.centos6.8 系统的虚拟机(四台) 2.关闭iptables和SELinux 3.预装glusterfs软件包 yum install -y centos-release-glus ...

  7. Yocto开发笔记之《快速入门,环境搭建 & 编译》(QQ交流群:519230208)

    开了一个交流群,欢迎爱好者和开发者一起交流,转载请注明出处. QQ群:,为避免广告骚扰,申请时请注明 “开发者” 字样 ======================================== ...

  8. 多态 oc c++ 与oc category

    多态是函数调用的动态绑定技术: c++动态绑定依赖于this指针与虚函数表. 虚函数表的排序规则: 1)虚函数按照其声明顺序放于表中. 2)父类的虚函数在子类的虚函数前面. 3)如果子类重写了父类的虚 ...

  9. npm run-script

    package.json "scripts": { "start": "electron .", "package": ...

  10. Nginx:Pitfalls and Common Mistakes

    New and old users alike can run into a pitfall. Below we outline issues that we see frequently as we ...