摘要: Autofac在提供之前那些方法的时候, 同时提供了五个事件, 这一篇就看一下这几个事件. 一、五大事件 看一下结果: 额, 首先我得说明一下, 输出的顺序和我写事件的顺序是没有关系的, 不是说, 我事件写在前面, 输出就在前面. 从这张图上, 能看到, 对象创建时, 构造函数的调用时在中间的. 其 阅读全文
posted @ 2016-12-15 16:24 Sniper_ZL 阅读(646) 评论(0) 推荐(0) 编辑
摘要: 通过程序集扫描, 能够自动注册符合规则的类型. 这种方式, 很方便. 这一篇就介绍下程序集扫描吧. 一、扫描 其实前面已经介绍过, 这种方式. 不过并不全. 先看一个之前的方式: 二、过滤 如果我并不想注册那么多的类型, 但是又想通过程序集的注册方式去注册, 那怎么办呢? 1. Where过滤 只需 阅读全文
posted @ 2016-12-15 14:00 Sniper_ZL 阅读(1607) 评论(0) 推荐(0) 编辑
摘要: 从容器中的可用服务中, 选取一个构造函数来创造对象, 这个过程就是自动装配. 一、选择构造函数 默认情况下, autofac会使用无参构造函数, 去创建对象. 我将Person类稍微修改了下. 但是也可以通过传入参数的方式, 去自动选择使用哪一个构造函数. 还可以在注册的时候就指定使用哪一个构造函数 阅读全文
posted @ 2016-12-13 17:15 Sniper_ZL 阅读(664) 评论(0) 推荐(0) 编辑
摘要: 上一篇中, 留了一个小问题,在一个接口下面, 注册多个类, 并能正常获取. 之前的方式是不能做到的, 在服务中, 有一种实现方式是可以的. 一、服务 1. 类型 - 描述服务的基本方法 上一篇其实使用到过这种方式, 只是并没有拿出来讲. 这个方法, 就可以将IAnimal类型的服务与Dog的组件连接 阅读全文
posted @ 2016-12-13 14:39 Sniper_ZL 阅读(554) 评论(0) 推荐(0) 编辑
摘要: 快到年终了, 最近项目比较悠闲, 就想总结下, 项目中所使用到的一些技术, 以及使用方法. 之前有写过Dapper以及Dapper的一个扩展, 这些也是项目中使用过的. 算是一个温故而知新吧. 代码: 一、类型注册 类型的注册, 使用的方法是container.Resolve<Type>()和con 阅读全文
posted @ 2016-12-13 11:21 Sniper_ZL 阅读(589) 评论(0) 推荐(0) 编辑
摘要: 如果你是一名建筑工人, 现在要建一栋十几层的楼房, 你会按照什么样的一个顺序去建造呢? 正常来说, 肯定是先打地基, 然后在此基础上, 建一层, 建第二层 ...... , 就现在中国的科技来说, 还没有说, 可以先建顶层, 再打地基, 在建倒数第二层, 这样一种随心所欲的建造方法来实现吧. 说白了 阅读全文
posted @ 2016-12-12 14:18 Sniper_ZL 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 原型模式从字面上来看, 可能还不是那么通俗, 通俗点讲, 可以说是拷贝模式. 从拷贝来说, 有完全拷贝, 和不完全拷贝. 就仿佛孙猴子的吹毛生猴, 但是这些小猴子明显就没有孙悟空本体厉害, 这种拷贝, 算是浅拷贝吧. 既然有浅拷贝, 那肯定也是有深拷贝的. 深拷贝就是小猴子与孙悟空本体一样厉害, 无 阅读全文
posted @ 2016-12-12 11:10 Sniper_ZL 阅读(323) 评论(0) 推荐(0) 编辑
摘要: 前面已经介绍了新增/修改/删除了, 接下来介绍一下Rainbow的Read方法. 一、Read -- Rainbow原生 1. 先看测试代码 Rainbow在读取数据这一块, 就只提供了这几个方法, 当然, Dapper的方法, 在这里仍然是可以用的, 通过db.Query的方式就可以用了 2. 源 阅读全文
posted @ 2016-12-08 11:14 Sniper_ZL 阅读(3266) 评论(0) 推荐(0) 编辑
摘要: 上一篇介绍了Rainbow的Create方法, 这里就来介绍一下Update方法吧, 毕竟新增和修改是双胞兄弟嘛. 一、Update 1. 测试代码: 使用方法和Insert方法类似, Update方法由两个参数, 第一个参数是Id, 第二个参数是dynamic data, 如果你不想更新全部的列, 阅读全文
posted @ 2016-12-08 09:16 Sniper_ZL 阅读(2446) 评论(0) 推荐(0) 编辑
摘要: Dapper这个ORM有许多扩展, 我自己用过两种, 也算是比较主流的两种, Rainbow和Extension, 这里就先介绍下Rainbow吧, 毕竟这个先用, 当然, 由于我使用的是mysql数据库(项目中, java和.net结合的, 所以mssql用不了, 就用了mysql), 所以在使用 阅读全文
posted @ 2016-12-07 17:12 Sniper_ZL 阅读(3040) 评论(0) 推荐(2) 编辑