认识

.NET

.net中非常有用的特性--反射

42 0

反射是.net中非常有用的特性。什么是反射可以用一句话来概括就是:基于程序集和元数据,可以动态创建某个类型的实例,调用方法,和访问对象成员的一种能力。 为什么要使用反射 在编译时无法确定要调用的对象的时候,就不得不使用反射。 反射的应用场景最常见的应用场景有:1,基于工厂模式实现的数据库切换。2,ORM框架,因为它要面对的是通用的模型,所有的属性或方法都是动态生成的。3,基于插件的系统,在完全不知道外部插件究竟是什么东西的情况下,是一定无法在编译期确定的,因此会使用反射进行加载。 程序集由于反射是基于程序

什么是委托?总结.net中重要的特性委托
.NET

什么是委托?总结.net中重要的特性委托

67 0

委托是.net中非常重要的特性,自.net 1.x版本就包含了,委托在项目开发过程中应用得非常多,但是一直以来很多同学对其理解得不是非常清楚(也包括我,虽然做开发很多年了,可能很多地方不知不觉也使用到了委托,但是仍然不是很清楚),那么我会整理一个系列文章来总结和加深一下对委托的印象。什么是委托可以用两点概括:1,最通俗的理解是,一个安全的'函数指针'。2,本质上,委托是一个类(class)(可以通过IL证明如下图),并且委托包含的是具有相同方法签名相同返回值的多个方法。 委托的类图: 从上图我们可以得到几