zoukankan      html  css  js  c++  java
  • vs 2010 中类文文件模板的修改

    类模板 文件的修改,以前也修改过,这次有个同事问我,搞了有一会才搞定,这里还是记录分享下。

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

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

    C:Program Files (x86)Microsoft Visual Studio 10.0Common7IDEItemTemplatesCacheCSharpCode2052Class.zip  这个文件夹

    打开后找到里面的Class.cs文件,将其内容改作

    using System;
    using System.Collections.Generic;
    $if$ ($targetframeworkversion$ >= 3.5)using System.Linq;
    $endif$using System.Text;
    
    
      /* ==============================================================================
       * 当前网站:$webnamespace$ 
       * 功能描述:$safeitemrootname$  
       * 创 建 者:$username$
       * 创建日期:$time$
       *
       *
       * 修改者:         修改时间:       修改说明:
       * ==============================================================================*/
    
    
    namespace $rootnamespace$
    {
        class $safeitemrootname$
        {
        }
    }

    保存,重启vs就可以了。

    这样说明下,我在这次修改的时候发现的问题

    第一个问题是:

    C:Program Files (x86)Microsoft Visual Studio 10.0Common7IDEItemTemplatesCacheCSharpCode2052Class.zip   这个路径下面的Class.cs文件是针对常用的类文件的修改,比如在类库中,winform中等创建的,如果我们要在webfrom,mvc等这些项目里面也达到这个效果,还要修改其他的 类模板 文件。

    我们打开,C:Program Files (x86)Microsoft Visual Studio 10.0Common7IDEItemTemplatesCache ,然后搜索Class.cs文件

    可以看到一个有4个类模板文件:

    第一个应用于类库中,winform

    第二个应用于Silverlight 项目中

    第三个应用于MVC项目中

    第四个应用于WebFrom项目中

    如果需要,可以把刚刚的那段 注释 加到这个类模板中去

    第二个问题是:

    除了以上的方法外,还可以修改

     C:Program FilesMicrosoft Visual Studio 10.0Common7IDEItemTemplatesCSharpCode2052Class.zip 

    然后以管理员的身份运行打开vs2010命令窗口执行 “devenv /InstallVsTemplates”。等待一小会儿,重启VS2010  

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

    对于这个方式,我在修改ItemTemplates下面的模板,重新生成后发现ItemTemplatesCache下面的Class模板为空,尝试了很多次都是这样,最后只能去别人的电脑里找到之前ItemTemplates里面的模板还原回去才行。。。具体什么原因也还不清楚。所以,用第二种方式的最好请先备份一下。不然很蛋疼。。。

    最后附上类模板中的变量参数:

    模板参数说明

    模板参数说明:

    Parameter

    说明

    clrversion

    公共语言运行时 (CLR) 的当前版本。

    GUID [1-10]

    用于替换项目文件中的项目 GUID 的 GUID。 guid1))。

    itemname

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

    machinename

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

    projectname

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

    registeredorganization

    HKLMSoftwareMicrosoftWindows NTCurrentVersionRegisteredOrganization 中的注册表项值。

    rootnamespace

    当前项目的根命名空间。 此参数用于仅在要添加到项目中的项中替换命名空间。

    safeitemname

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

    safeprojectname

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

    time

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

    userdomain

    当前的用户域。

    username

    当前的用户名。

    webnamespace

    当前网站的名称。 在 Web 窗体模板中使用此参数以确保类名称是唯一的。 如果网站位于 Web 服务器的根目录下,则此模板参数将解析为 Web 服务器的根目录。

    year

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

  • 相关阅读:
    可汗学院的数学从零开始学习顺序?
    判断两个数组内容是否相同
    eclipse package,source folder,folder区别及相互转换
    [垂直化搜索引擎]lucene简介及使用
    有效处理Java异常三原则
    ZeroMQ作者于昨天下午宣布选择安乐死
    linux一路填坑...
    gcc/g++/makefile/easymake/cmake/xmake/nmake ...
    RTSP客户端接收存储数据(live555库中的openRTSP实例)
    RTSP客户端接收存储数据(live555库中的testRTSPClient实例)
  • 原文地址:https://www.cnblogs.com/qtqq/p/3962720.html
Copyright © 2011-2022 走看看