摘要: 反射(C# - vs2010) 反射提供了描述程序集、模块和类型的对象(Type 类型)。 可以使用反射动态创建类型的实例,将类型绑定到现有对象,或从现有对象获取类型并调用其方法或访问其字段和属性。 如果代码中使用了特性,可以利用反射来访问它们。 有关更多信息,请参见 利用特性扩展元数据。 下面是使 阅读全文
posted @ 2017-02-11 17:40 绣春刀 阅读(301) 评论(0) 推荐(0) 编辑
摘要: 特性(C# - vs2010) 特性提供功能强大的方法,用以将元数据或声明信息与代码(程序集、类型、方法、属性等)相关联。 特性与程序实体关联后,即可在运行时使用名为“反射”的技术查询特性。 有关更多信息,请参见 反射(C# 和 Visual Basic)。 特性具有以下属性: 特性可向程序中添加元 阅读全文
posted @ 2017-02-11 16:02 绣春刀 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 迭代器(C# 编程指南) 迭代器是 C# 2.0 中的新功能。迭代器是方法、get 访问器或运算符,它使您能够在类或结构中支持 foreach 迭代,而不必实现整个 IEnumerable 接口。您只需提供一个迭代器,即可遍历类中的数据结构。当编译器检测到迭代器时,它将自动生成 IEnumerabl 阅读全文
posted @ 2017-02-11 15:37 绣春刀 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 观察程序设计模式 观察者设计模式使订阅者能够向提供程序注册并接收相关通知。 它适合所有需要推送通知的方案。 该模式定义一个提供程序(也称为主题或观察对象)以及零个、一个或多个观察者。 观察者向提供程序注册,并且当任何预定义的条件、事件或状态更改发生时,提供程序就会调用观察者中的一种方法,自动通知所有 阅读全文
posted @ 2017-02-11 11:23 绣春刀 阅读(285) 评论(0) 推荐(0) 编辑
摘要: 延迟初始化 一个对象的延迟初始化意味着该对象的创建将会延迟至第一次使用该对象时。 (在本主题中,术语“延迟初始化”和“延迟实例化”是同义词。)延迟初始化主要用于提高性能,避免浪费计算,并减少程序内存要求。 以下是最常见的方案: 有一个对象的创建开销很大,而程序可能不会使用它。 例如,假定您在内存中有 阅读全文
posted @ 2017-02-11 11:06 绣春刀 阅读(2390) 评论(0) 推荐(0) 编辑
摘要: 委托概述 委托是一种引用方法的类型。一旦为委托分配了方法,委托将与该方法具有完全相同的行为。委托方法的使用可以像其他任何方法一样,具有参数和返回值,如下面的示例所示: 复制 public delegate int PerformCalculation(int x, int y); 与委托的签名(由返 阅读全文
posted @ 2017-02-11 10:55 绣春刀 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 独立存储 独立存储是一种数据存储机制,它在代码与保存的数据之间定义了标准化的关联方式,从而提供隔离性和安全性。 同时,标准化也提供了其他好处。 管理员可以使用旨在操作独立存储的工具来配置文件存储空间、设置安全策略及删除未使用的数据。 通过独立存储,代码不再需要使用唯一的路径来指定文件系统中的安全位置 阅读全文
posted @ 2017-02-11 10:15 绣春刀 阅读(530) 评论(0) 推荐(0) 编辑