【C#】VS2019新建C#类自动添加作者版权等信息

VisualStudio2019新建C#类自动添加作者版权等信息

问题:

新建C#类的时候经常需要手动添加注释和版权等信息,那么如何新建类的时候就让编译器自动添加好这些信息呢?

解决:

参考网上的资料,总结如下解决方案:

1.找到VS2019的安装目录,一般社区版在C:\Program Files (x86)\Microsoft Visual Studio\2019\Community目录下。

2.再找到安装目录下的Common7\IDE\ItemTemplates\CSharp\Code\2052文件夹,这里有三个文件夹,分别是ClassCodeFileInterface,我们需要修改ClassInterface里面的内容。

3.找到Class目录下的Class.cs文件,打开编辑并输入如下内容并保存:(如果提示没有权限需要另存为时,可以先保存到桌面,再复制过来)

#region << 版 本 注 释 >>
/*----------------------------------------------------------------
 * 版权所有 (c) $year$ $registeredorganization$ NJRN 保留所有权利。
 * CLR版本:$clrversion$
 * 机器名称:$machinename$
 * 公司名称:$registeredorganization$
 * 命名空间:$rootnamespace$
 * 唯一标识:$guid10$
 * 文件名:$safeitemname$
 * 当前用户域:$userdomain$
 * 
 * 创建者:$username$
 * 电子邮箱:(你的电子邮箱地址)
 * 创建时间:$time$
 * 版本:V1.0.0
 * 描述:
 *
 * ----------------------------------------------------------------
 * 修改人:
 * 时间:
 * 修改说明:
 *
 * 版本:V1.0.1
 *----------------------------------------------------------------*/
#endregion << 版 本 注 释 >>

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$
{
     /// <summary>
     /// $safeitemrootname$ 的摘要说明
     /// </summary>
    class $safeitemrootname$
    {
        #region <常量>
        #endregion <常量>

        #region <变量>
        #endregion <变量>

        #region <属性>
        #endregion <属性>

        #region <构造方法和析构方法>
        #endregion <构造方法和析构方法>

        #region <方法>
        #endregion <方法>

        #region <事件>
        #endregion <事件>
    }
}

4.再找到Interface目录下的Interface.cs文件,打开编辑并输入如下内容并保存:

#region << 版 本 注 释 >>
/*----------------------------------------------------------------
 * 版权所有 (c) $year$ $registeredorganization$ NJRN 保留所有权利。
 * CLR版本:$clrversion$
 * 机器名称:$machinename$
 * 公司名称:$registeredorganization$
 * 命名空间:$rootnamespace$
 * 唯一标识:$guid10$
 * 文件名:$safeitemname$
 * 当前用户域:$userdomain$
 * 
 * 创建者:$username$
 * 电子邮箱:(你的电子邮箱地址)
 * 创建时间:$time$
 * 版本:V1.0.0
 * 描述:
 *
 * ----------------------------------------------------------------
 * 修改人:
 * 时间:
 * 修改说明:
 *
 * 版本:V1.0.1
 *----------------------------------------------------------------*/
#endregion << 版 本 注 释 >>

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$
{
    /// <summary>
    /// $safeitemrootname$ 的摘要说明
    /// </summary>
    interface $safeitemrootname$
    {
        #region <属性>
        #endregion <属性>

        #region <方法>
        #endregion <方法>

        #region <事件>
        #endregion <事件>

        #region <索引器>
        #endregion <索引器>
    }
}

5.重新打开VS2019,新建类或者接口的时候就会自动添加注释啦~ 下面是新建类的效果:

#region << 版 本 注 释 >>
/*----------------------------------------------------------------
 * 版权所有 (c) 2020  NJRN 保留所有权利。
 * CLR版本:4.0.30319.42000
 * 机器名称:DESKTOP-NU1L2DL
 * 公司名称:
 * 命名空间:Dome.src.Service
 * 唯一标识:f127b355-624e-49d2-a0c1-2475db71ffbd
 * 文件名:Class1
 * 当前用户域:DESKTOP-NU1L2DL
 * 
 * 创建者:Minuy
 * 电子邮箱:(你的电子邮箱地址)
 * 创建时间:2020/11/23 15:23:11
 * 版本:V1.0.0
 * 描述:
 *
 * ----------------------------------------------------------------
 * 修改人:
 * 时间:
 * 修改说明:
 *
 * 版本:V1.0.1
 *----------------------------------------------------------------*/
#endregion << 版 本 注 释 >>

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;


namespace Dome.src.Service
{
    /// <summary>
    /// Class1 的摘要说明
    /// </summary>
    class Class1
    {
        #region <常量>
        #endregion <常量>

        #region <变量>
        #endregion <变量>

        #region <属性>
        #endregion <属性>

        #region <构造方法和析构方法>
        #endregion <构造方法和析构方法>

        #region <方法>
        #endregion <方法>

        #region <事件>
        #endregion <事件>
    }
}

总结:

参数 描述
clrversion 当前系统CLR版本号
guid(1-10) 生成全局唯一标识符,可以生成10个 (例如:guid1)
itemname 打开添加新建项时输入的文件名称
machinename 当前机器的名称(如:XXXX)
registeredorganization 注册的组织名
rootnamespace 命名空间名
safeitemname 保存的文件名
time 当前系统时间,格式:DD/MM/YYYY 00:00:00.
userdomain 用户所在的域
username 当前系统用户名
year 当前系统时间 YYYY
posted @ 2020-11-29 22:57  清风来叙  阅读(4713)  评论(0编辑  收藏  举报