Loading

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:  }
posted @ 2012-09-14 16:17  光脚码农  阅读(629)  评论(0编辑  收藏  举报