Visual Studio中如何修改创建class/interface的模板
最近发现我的VS 2010在创建类的时候总是把引用命名空间的那段代码放在了namespace block内部,以为是新安装的settings文件导致的,不过后来发现不是如此。
namespace Basic
{
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
class Class1
{
}
}
记得之前应该是安装过从网上下载的本色方案,也许里边有修改Item Template的改动。不管这么多了,现在问题出来了,就得想法子解决。
在Stackoverflow上找到一个同样的问题,回答得很到位: http://stackoverflow.com/questions/2072687/how-do-i-edit-the-visual-studio-templates-for-new-c-sharp-class-interface
其实我们是要修改VS template 文件才能达到我的要求,那控制这些模块的文件在哪儿呢?
VS 2005
C:\Program Files (x86)\Microsoft Visual Studio
8
\Common7\IDE\ItemTemplates\CSharp\
1033
\Class.zip
VS 2008
C:\Program Files (x86)\Microsoft Visual Studio
9.0
\Common7\IDE\ItemTemplates\CSharp\Code\
1033
\Class.zip
VS 2010
C:\Program Files (x86)\Microsoft Visual Studio
10.0
\Common7\IDE\ItemTemplates\CSharp\Code\
1033
\Class.zip
知道了这些,进入相应的目录找到对应的文件,解压文件,然后编辑class.cs这个文件,
1: using System;
2: using System.Collections.Generic;
3: $if$ ($targetframeworkversion$ >= 3.5)using System.Linq;
4: $endif$using System.Text;
5:
6: namespace $rootnamespace$
7: {
8: class $safeitemrootname$
9: {
10: }
11: }
保存,然后压缩替换原来的class.zip文件。
最后,我们要使我们刚才的改动生效,打开Visual Studio 命令提示符, 输入devenv/setup回车。
等结束后,重启Visual Studio,新建一个class,你会发现一切都回到了你想要的效果了。
通过我们可以在类模板中加入版权或作者等信息,让类更加具有可读性。
1: /* ***********************************************
2: * author : $username$
3: * email : xxx@outlook.com
4: * function:
5: * history: created by $username$ $time$
6: * ***********************************************/
7:
8: using System;
9: using System.Collections.Generic;
10: $if$ ($targetframeworkversion$ >= 3.5)using System.Linq;
11: $endif$using System.Text;
12:
13: namespace $rootnamespace$
14: {
15: class $safeitemrootname$
16: {
17: }
18: }