06 2019 档案
摘要:一.Var关键字 在学习Linq查询之前,我们先来学习var关键字的用法,看看微软官方的定义:从Visual C#3.0开始,在方法范围声明的变量可以具有隐式“类型” var。隐式类型的局部变量是强类型的,就像您自己声明了类型一样,但编译器确定了类型。从这个定义我们有两点需要注意,首先用var申明的
阅读全文
摘要:一.为什么提出简单工厂模式 考虑一个简单的软件应用场景,一个生产月饼的工厂要生产不同类型的月饼(豆沙的,肉馅的,核桃馅的),现在我们通过”订单“就可以生产不同类型的月饼,这种应用场景反映到程序上就可以使用简单工厂模式。 二.简单工厂模式的定义 简单工厂模式(Simple Factory Patter
阅读全文
摘要:很多人对Invoke和BeginInvoke理解不深刻,不知道该怎么应用,在这篇博文里将详细阐述Invoke和BeginInvoke的用法: 首先说下Invoke和BeginInvoke有两种用法: 1.Control中Invoke,BeginInvoke 2.Delegate中Invokke,Be
阅读全文
摘要:一.什么是委托 委托的本质是一种数据类型,和类类型一样,只是一种数据类型没什么神秘的地方,委托是一种引用数据类型,表示对具有特定参数列表和返回类型的方法的引用。在实例化委托时,你可以将其实例与任何兼容的方法(参数和返回值,简称方法的签名)相关联,再通俗一点的讲,委托是可以将"方法"定义成变量的数据类
阅读全文
摘要:一.什么是反射 Reflection,中文翻译为反射。这是.Net中获取运行时类型信息的方式, .Net的应用程序由几个部分:‘程序集(Assembly)’、‘模块(Module)’、‘类型(class)’组成,而反射提供一种编程的方式,让程序员可以在程序运行期获得这几个组成部分的相关信息, 例如:
阅读全文
摘要:String path = @"X:\xxx\xxx"; //第一种方法 var files = Directory.GetFiles(path, "*.txt"); foreach (var file in files) Console.WriteLine(file); //第二种方法 DirectoryInfo folder = new Direc...
阅读全文
摘要:一.什么是模块封装 模块封装最直接的形式是类库,但是类库不是模块封装的唯一形式,我们将实现某些职能的代码以类库的形式封装起来,就可以达到模块封装的目的,我们以设计一个计算器为例: CalDll是实现计算的类库 在winform窗体中,我们调用实现计算的类库,达到计算的目的: 程序运行结果如下: 二.
阅读全文
摘要:问题描述 在.NET/C#应用程序编程开发中,如何判断一个字符串集合List<string>中是否有重复的元素? 假如有如下的List<string>集合: 现在有一个简单的判断/检查lstNames字符串集合中是否有重复元素的实现,如下: 方案一 使用LINQ的GroupBy()和Any()方法实
阅读全文

浙公网安备 33010602011771号