C#系列之单线程递归遍历文件夹

最近在做一些代码分析的小程序,抓出代码里面符合特定规则的文件,把符合特征的代码文件和代码片段抓出来,输出成一个txt文件,方便统计和查找,为日后分析做准备,因为要遍历所有项目文件,所以需要程序依次访问每个文件夹下的所有文件,因为还有子文件夹,因此想到了用递归来遍历,这个实现没有涉及多线程,以后有机会再改成多线程吧,这里记录一下方法,用到了尾递归。

C#系列之聊聊.net core的InMemoryCache

这两天在看.net core的in memory cache,这里记录一下用法,主要涉及MemoryCache的Get/Set/Expire/Flush。

C#系列之在Mac上安装VsCode+Vim插件

这里总结一下在Mac上安装VsCode和Vim插件时遇到的一些坑,希望能帮助到遇到同样问题的人。

C#系列之.net异步编程的前世今生 & async & await

今天我们来聊一聊.net异步编程,.net 4.5为我们提供了两个新的关键字async 和 await,使我们能够借助TAP提供的一系列Async方法像同步编程一样来写异步代码,这篇文章里还会回顾一下之前异步编程的一些模式,比如EAP,APM,让我们体会一下async和await带来的便利。

C#系列之Attribute与反射

Attribute是C#的一种语言特性,用于为各种实体(class,field,property)附加一些说明性信息, 并且可以在运行时环境中检索这些信息(通过反射)。这篇文章介绍了如何去声明和使用一个attribute,并且介绍了反射的基本知识,以及如何运用反射来读取attribute的信息。

ElmahR Introduction

Elmah stands for Error Logging Modules and Handlers and is used to log unhandled exceptions to the file system, event log, databases or even have it email you the errors.

正则表达式入门教程

本文介绍了正则表达式的基本用法,和一些举例,参照例子能够轻松上手

用正则表达式实现一个简单的string.Format方法

最近在学习正则表达式,于是尝试了下用正则表达式实现一个简单的string.Format方法。遇到了几个问题并提供了一些解决思路和办法。