★前言

    最近下载了tita_chou在CSDN上传的一个资源,是在工作中整理的C#帮助类,里面包含了很多实用的类,想到我之前收集过自己用到少的可怜的类,心生敬意啊。当粗略的查看了那个资源,发现有一些是重复的,有一些我的里面有的那个没有,于是乎就萌生了重新整理一个属于自己的帮助类,于是乎就花了几个晚上的时间,重新过了一遍,还借用SandCastle工具生成了帮助文档(CHM),这一个开源的工具,感觉生成帮助文档挺方便的,下面会介绍这个工具。

★为什么要整理

     为什么要整理这个帮助类呢,其实我也不太清楚,可能跟我有收藏的爱好有关吧,说起我的收藏,历史渊源啊……其实我感觉这样做的一个好处是,就是减少重复造轮子或者找轮子的重复劳动。以前在写代码中经常遇到一个似曾相识的功能,好像在哪做过,但又想不起来,于是就开始翻以前写的代码,翻来翻去,好不容易找到了感觉是上帝的恩赐似的,赶紧复制粘贴过来,也有不少时候找不到在哪,于是一狠心一跺脚重写一遍吧!浪费了很多时间,说不定还被追债,很是不爽,所以就有了这个通用库,以后可以多花点时间在自己的核心业务上了,这样说来还是有必要的,我相信很多朋友都有类似整理的习惯吧。

★整理过程

   整个过程也没有用到多少技术,整个过程还是轻松愉快的,并接触到了新的东西,已经很满足了,在这里简单的记录一下整理的过程:

   1、合并功能重复的类;

   2、完善类的注释;

   3、精简冗余代码;

   4、利用SandCastle工具生成帮助文档,不熟悉SandCastle可以参考这里,关于.NET中的XML注释规则参考这里张子秋前辈已经写的很详细了,受益匪浅,生成的CHM文档地址在这里

   5、源码上传到Github,在这里,同时上传的还有使用SandCastle创建的生成帮助文档的项目,使用的方法主要参考这里

   6、利用Windows Live Writer写这篇博客,第一次用,感觉还不错,主要是可以离线写博文,不会因为网络问题引起数据丢失(想起来之前用网页编辑器,一不小心就没了,都是泪啊),参考在这里

★整理成果

下面就是这几天整理的成果,CHM文件目录的截图,看起来成果颇丰啊,不过里面的东西还是惨不忍睹啊(还有很大部分不太完善):

★总结

  虽然花了几个晚上看电影的时间,不过感觉这工作挺值了,以后或多或少会用的到吧,尤其是学会使用SandCastle生成帮助文档和Live Writer写博客了(大神勿笑)。不过在整理的过程中也看到了自己还是很无知啊,很多东西都没弄明白,总以为进入这行也有两年左右也有不少经验了,但现在的水平也就刚入门吧,以后还有很长一段路要走啊。

★声明及愿景

   此项目中的代码是基于tita_chou上传的资源的加工及进一步整理,尊重原作者的版权,若涉及侵权,请联系删除源码。不过我还是希望大家能够共同完善这个项目,现在还有很多不完善的地方,包括注释不全,大部分代码都没经过测试,也存在很多功能重复的地方,期待您的加入,让我们一起把这个代码库做的更强大,源码在这里!!!

★参考

下面列出文章中没有提到的参考

SandCastle参考:

http://blog.csdn.net/yl2isoft/article/details/18454115

http://www.cnblogs.com/net515/p/3311584.html

http://www.cnblogs.com/zhangziqiu/archive/2009/01/31/1381666.html

http://www.veryhuo.com/a/view/71066.html

Windows Live Writer参考:

http://www.cnblogs.com/lyj/archive/2008/11/30/1344463.html

http://www.cnblogs.com/cmt/archive/2012/06/25/2560793.html

http://www.cnblogs.com/cmt/archive/2012/06/26/live_writer_cnblogs_entryname.html

http://www.cnblogs.com/cmt/archive/2012/06/26/live_writer_cnblogs_code_highlight.html

C#通用类Helper整理的更多相关文章

  1. 如何编写通用的 Helper Class

    Github: https://github.com/nzbin/snack-helper Docs: https://nzbin.github.io/snack-helper 前言 什么是 help ...

  2. C#---数据库访问通用类、Access数据库操作类、mysql类 .[转]

    原文链接 //C# 数据库访问通用类 (ADO.NET)using System;using System.Collections.Generic;using System.Text;using Sy ...

  3. C#---数据库访问通用类、Access数据库操作类、mysql类 .

    //C# 数据库访问通用类 (ADO.NET)using System;using System.Collections.Generic;using System.Text;using System. ...

  4. poi导出excel通用类

    一.关键的通用类public class PoiExportUtils {    private static HSSFWorkbook workBook; public PoiExportUtils ...

  5. NPOI MVC 模型导出Excel通用类

    通用类: public enum DataTypeEnum { Int = , Float = , Double = , String = , DateTime = , Date = } public ...

  6. MVC NPOI Linq导出Excel通用类

    之前写了一个模型导出Excel通用类,但是在实际应用中,可能不是直接导出模型,而是通过Linq查询后获取到最终结果再导出 通用类: public enum DataTypeEnum { Int = , ...

  7. NPOI导入导出EXCEL通用类,供参考,可直接使用在WinForm项目中

    以下是NPOI导入导出EXCEL通用类,是在别人的代码上进行优化的,兼容xls与xlsx文件格式,供参考,可直接使用在WinForm项目中,由于XSSFWorkbook类型的Write方法限制,Wri ...

  8. mongdo通用类(C#版)

    日前从公司离职,很快,还没休息就步入了现在的公司,开始跟着公司的脚步走. 公司的项目基本都是大数据的,所以在数据库上大部分都是使用Mongodb和Redis,基本都是Nosql型的数据库为主.以前自己 ...

  9. 我写的一个ExcelHelper通用类,可用于读取或生成数据

    读取或生成EXCEL数据的方法有很多,一般常见的有: 1.通过OFFICE EXCEL组件,优点:读取与生成EXCEL文件方便,缺点:服务器上必须安装OFFICE软件,且进程无法及时释放 2.通过第三 ...

随机推荐

  1. IOS 多线程01-线程基础知识

    大部分现代操作系统,包括IOS,都支持执行线程的概念.每个进程可以包含多个线程,他们可以同时运行.如果只有一个处理器核心,操作系统将在所有执行线程之间切换,非常类似于在所有执行线程之间切换.如果拥有多 ...

  2. VS2015的一些资料

    http://blog.csdn.net/hk_5788/article/details/48466295 主要看一下js支持方面的,另外今天复习了promise,刚入职的时候看得有些问题,今晚抽时间 ...

  3. 第十六回 IoC组件Unity续~批量动态为Unity添加类型和行为

    回到目录 之前的一篇Unity的文章主要是基本的实现,并没有什么特别的地方,使用Unity可以方便的实现应用程序的IoC控制反转,这给我们的应用程序在耦合度上变得高了,同时可测试性加强了,当然,这些的 ...

  4. QQ表情动图,增加写博客的乐趣

    QQ表情动图,增加写博客的乐趣 body{margin:0px;}

  5. Git-图文教程

    https://github.com/haveatry823/QSanguoshaAI/wiki/Git-%E5%9B%BE%E6%96%87%E6%95%99%E7%A8%8B http://www ...

  6. sublime简要笔记

    选中单词 [1]选中当前单词 ctrl+d [2]跳过当前单词 ctrl+k ctrl+d [3]选中相同的所有单词 alt+f3 [4]多行游标 按住shift,然后按住鼠标右键向下拖动 行操作 [ ...

  7. java的LINQ :Linq4j简明介绍

    开发JAVA一段时间,面临的一大问题就是集合操作,习惯了LINQ的简洁语法,对JAVA的集合操作实在是无甚好感,只能通过C系的循环实现筛选等操作,由于没有延迟执行特性,内存占用实在不敢恭维.因此便在网 ...

  8. [c++] Pieces of knowledge

    再系统地学一遍c++,查缺补漏. wchar_t L'a' stored in wchar_t. size of types cout << numeric_limits<doubl ...

  9. C/C++定义全局变量/常量几种方法的区别

    在讨论全局变量之前我们先要明白几个基本的概念: 1. 编译单元(模块):    在IDE开发工具大行其道的今天,对于编译的一些概念很多人已经不再清楚了,很多程序员最怕的就是处理连接错误(LINK ER ...

  10. js让程序暂停一段时间再执行

    function sleep(d){ for(var t = Date.now();Date.now() - t <= d;); } sleep(5000); //当前方法暂停5秒