摘要:
await和async是.NET Framework4.5框架、C#5.0语法里面出现的,await和async是语法糖。 注意: 1、async出现在方法的声明里面,任何一个方法都可以增加async。 2、await放在Task前面,async和await是成对出现的,只有async是没有意义的, 阅读全文
摘要:
一、CLR CLR:即公共语言运行时(Common Language Runtime),是中间语言(IL)的运行时环境,负责将编译生成的MSIL编译成计算机可以识别的机器码,负责资源管理(内存分配和垃圾回收等)。 可能有人会提问:为什么不直接编译成机器码,而要先编译成IL,然后在编译成机器码呢? 原 阅读全文
摘要:
一、out输出参数 在以前使用out输出参数的时候,必须先定义变量,然后才能使用,例如: 先定义一个方法,方法参数是out类型的输出参数: 以前版本的写法: 在C#7.0中,可以不用先定义,就能够直接使用了: 结果: 二、模式 使用方法: 结果: 除了可以像上面那样使用外,还可以使用下面的方式: 调 阅读全文
摘要:
一、自动属性初始化 在以前的C#版本中,属性是这样写的: 在C#6.0中,属性可以自动赋初始值,例如: 二、导入静态类 我们都知道,使用静态类的方法时是使用类名.方法名的形式,例如: 这里的Math是框架自带的静态类,要使用Pow()方法,必须要向上面的代码一样。在C#6.0中可以用下面的方式使用静 阅读全文
摘要:
这篇文章主要讲解C#中的泛型,泛型在C#中有很重要的地位,尤其是在搭建项目框架的时候。 一、什么是泛型 泛型是C#2.0推出的新语法,不是语法糖,而是2.0由框架升级提供的功能。 我们在编程程序时,经常会遇到功能非常相似的模块,只是它们处理的数据不一样。但我们没有办法,只能分别写多个方法来处理不同的 阅读全文
摘要:
FastReport是功能非常强大的报表工具,在本篇文章中讲解如何使用FastReport实现打印功能。 一、新建一个窗体程序,窗体上面有设计界面和预览界面两个按钮,分别对应FastReport的设计和预览功能,其实现代码如下: 二、运行程序,点击设计界面,打开FastReport的设计界面: 三、 阅读全文
摘要:
一、什么是DTO 先来看看百度百科的解释: 数据传输对象(DTO)(Data Transfer Object),是一种设计模式之间传输数据的软件应用系统。数据传输目标往往是数据访问对象从数据库中检索数据。数据传输对象与数据交互对象或数据访问对象之间的差异是一个以不具有任何行为除了存储和检索的数据(访 阅读全文
摘要:
一、MD5不可逆加密 不可逆加密是指将原文加密成密文以后,无法将密文解密成原文。 MD5的算法是公开的,无论是哪种语言,只要需要加密的字符串是相同的,那么经过MD5加密以后生成的结果都是一样的。 .NET框架中已经帮我们实现好了MD5加密,请看下面的例子: Main()方法调用: 结果: 应用: 1 阅读全文
摘要:
一、ThreadPool ThreadPool是.Net Framework 2.0版本中出现的。 ThreadPool出现的背景:Thread功能繁多,而且对线程数量没有管控,对于线程的开辟和销毁要消耗大量的资源。每次new一个THread都要重新开辟内存。 如果某个线程的创建和销毁的代价比较高, 阅读全文
摘要:
一、什么是特性 特性(Attribute)是用于在运行时传递程序中各种元素(比如类、方法、结构、枚举、组件等)的行为信息的声明性标签。您可以通过使用特性向程序添加声明性信息。一个声明性标签是通过放置在它所应用的元素前面的方括号([ ])来描述的。 特性(Attribute)用于添加元数据,如编译器指 阅读全文