C#实现为类和函数代码自动添加版权注释信息的方法
作者:shichen2014 发布时间:2021-11-30 10:05:21
本文实例讲述了C#实现为类和函数代码自动添加版权注释信息的方法,分享给大家供大家参考之用。具体方法如下:
以web项目为例:
一:给类加注释
1.在visual studio 的安装路径下
如:[盘符]:/Program files/Microsoft Visual Studio 8/Common7/IDE/ItemTemplates/web/cshare/2052/class.zip ,将里面的class.cs改为:
/*----------------------------------------------------------------
// 版权所有。
//
// 文件名:
// 文件功能描述:
//
//
// 创建标识:
//
// 修改标识:
// 修改描述:
//
// 修改标识:
// 修改描述:
//----------------------------------------------------------------*/
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
/// <summary>
/// $safeitemrootname$ 的摘要说明
/// </summary>
public class $safeitemrootname$
{
public $safeitemrootname$()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
}
/*----------------------------------------------------------------
// 版权所有。
//
// 文件名:
// 文件功能描述:
//
//
// 创建标识:
//
// 修改标识:
// 修改描述:
//
// 修改标识:
// 修改描述:
//----------------------------------------------------------------*/
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
/// <summary>
/// $safeitemrootname$ 的摘要说明
/// </summary>
public class $safeitemrootname$
{
public $safeitemrootname$()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
}
保存文件即可(先解压,在修改)
二:VS宏脚本添加函数注释模板
现在的IDE越做越强大,为我等懒人省了不少。为了使用将来的代码自己或别人能看懂,注释这种东西必不可少。当为函数添加注释时,格式是固定的。每个函数写一遍,或从别的函数处拷贝过来,即麻烦又容易出错。这种重复劳动让人心烦都有不想写注释的欲望了,这时VS的宏可以干掉这些“脏、乱、累”的体力活。
看了一下,vs2010的宏脚本就是VBScript,很容易上手。我写了一个生成函数注释模板的宏脚本,比较容易,看代码:
Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports System.Diagnostics
Public Module Module1
Sub AddFunComment()
Dim DocSel As EnvDTE.TextSelection
DocSel = DTE.ActiveDocument.Selection
DocSel.NewLine()
DocSel.Text = "/*******************************************************************"
DocSel.NewLine()
DocSel.Text = "* 函数名称: "
DocSel.NewLine()
DocSel.Text = "* 功 能: "
DocSel.NewLine()
DocSel.Text = "* 参 数: "
DocSel.NewLine()
DocSel.Text = "* 返 回 值: "
DocSel.NewLine()
DocSel.Text = "* 作 者: Lonkil"
DocSel.NewLine()
DocSel.Text = "* 电子邮箱: lonkil{AT}gmail.com ( {AT} -> @ )"
DocSel.NewLine()
DocSel.Text = "* 创建日期: " + System.DateTime.Now.ToLongDateString()
DocSel.NewLine()
DocSel.Text = "*******************************************************************/"
End Sub
End Module
Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports System.Diagnostics
Public Module Module1
Sub AddFunComment()
Dim DocSel As EnvDTE.TextSelection
DocSel = DTE.ActiveDocument.Selection
DocSel.NewLine()
DocSel.Text = "/*******************************************************************"
DocSel.NewLine()
DocSel.Text = "* 函数名称: "
DocSel.NewLine()
DocSel.Text = "* 功 能: "
DocSel.NewLine()
DocSel.Text = "* 参 数: "
DocSel.NewLine()
DocSel.Text = "* 返 回 值: "
DocSel.NewLine()
DocSel.Text = "* 作 者: Lonkil"
DocSel.NewLine()
DocSel.Text = "* 电子邮箱: lonkil{AT}gmail.com ( {AT} -> @ )"
DocSel.NewLine()
DocSel.Text = "* 创建日期: " + System.DateTime.Now.ToLongDateString()
DocSel.NewLine()
DocSel.Text = "*******************************************************************/"
End Sub
End Module
具体的创建步骤:vs2010 IDE -> 工具 -> 宏 -> 新建宏项目,选择要保存的位置。然后将要上面的脚本复制进去,保存即可。
具体的使用:为你编写的宏绑定快捷键,vs2010 IDE -> 工具 -> 选项 -> 在左边列表中选择“键盘” -> 在右边的“显示命令包含”中,选择你创建宏-> 将光标定位到”按快捷键”处 -> 输入你想命名的快捷键,比如”Alt+C”,保存即可。
有一点需要注意:Visual Studio 2005 Team Suite 需要打上SP1补丁,宏方能使用否则无效。
相信本文所述对大家的C#程序设计有一定的借鉴价值。
猜你喜欢
- Mybatis mapper模糊查询语句LIKE最近做学校安排的课程设计作业,用到SSM框架,在自己写mapper代码是遇到了模糊查询的问题
- 前言随着网络技术的发展、计算机应用水平广泛提高,原来系统的时效性、数据的正确性、操作的方便性上都存在不足,已影响到系统的正常使用。经过考察比
- 太多的if-else不太直观,难以维护。 以下面代码为例,展示几种替代if else的方法。String input = &quo
- 实现比较两个List之间的差异,包括获取两List的差集,交集,并集(不去重&去重)的API解法和优化解法的解决方案。求差集/**
- 本文主要包括以下几个方面:编码基本知识,java,系统软件,url,工具软件等。 在下面的描述中,将以&
- 写在前面Activity是Android四大组件之一,用于直接跟用户进行交互,本篇文章将介绍Activity的启动流程。用户启动Activi
- 系列文章已完成,目录如下:jdk-logging log4j logback日志系统实现机制原理介绍commons-lo
- 日志输出是所有系统必备的,很多开发人员可能因为常常使用log4j而忽视了JDK logging模块,两者之间是否有联系?是怎样的联系?JDK
- 1、java代码/** 获取客户端IP */ public static final String getClientIp(Ht
- 一.什么是SemaphoreSemaphore,俗称信号量,它是操作系统中PV操作的原语在java的实现,它也是基于AbstractQueu
- 1 基本概念ThreadLocal类提供了线程局部变量。这些变量与普通变量的不同之处在于,每个访问一个变量(通过其get或set方法)的线程
- 本文实例讲述了C#基于委托实现多线程之间操作的方法。分享给大家供大家参考,具体如下:有的时候我们要起多个线程,更多的时候可能会有某个线程会去
- 本文实例讲述了C#不重复输出一个数组中所有元素的方法。分享给大家供大家参考。具体如下:1.算法描述0)输入合法性校验1)建立临时数组:与原数
- 异常和异常处理C# 语言的异常处理功能可帮助您处理程序运行时出现的任何意外或异常情况。异常处理使用 try、catch 和 finally
- 归并排序简单解释:该算法是采用分治法,把数组不断分割,直至成为单个元素,然后比较再合并(合并的过程就是两部分分别从头开始比较,取出最小或最大
- 在类中自定义的“函数”称为“方法”,由于C#是完全面向对象的
- 代码import javax.mail.internet.InternetAddress;import javax.mail.interne
- 前言在之前学习如何使用MediaPlayer后,了解到Android系统提供开发者播放多媒体全家桶能力,但对于开发者希望DIY自由度更高的播
- 在开发过程中,我们经常需要将数据库查询到的值放入jsp页面进行显示,在springmvc的controller中,我们采用request将数
- 一、历史版本delegate void StudentDelegate(string name, int age);public class