摘要: http://www.rainsts.net/article.asp?id=243 有意无意的,很多文章都没有提及 ActiveRecordMediator 。 ActiveRecordMediator最大的用途是:即便你的实体类不是继承自 ActiveRecordBase (不推荐这么做),它也可以进行同等的创建、查找等操作;另外这个类实现了很多常用的方法,我们直接使用它就没必要为每个实体类写... 阅读全文
posted @ 2008-01-23 07:38 JerryZhao 阅读(699) 评论(0) 推荐(0) 编辑
摘要: http://www.rainsts.net/article.asp?id=242 在ActiveRecord中级联操作为我们带来很多方便,但是一些细节地方需要注意。 [ActiveRecord("Users")] public class User : ActiveRecordBase { public User() { } public User(string name) :... 阅读全文
posted @ 2008-01-23 07:36 JerryZhao 阅读(440) 评论(0) 推荐(0) 编辑
摘要: http://www.rainsts.net/article.asp?id=244 ActiveRecord 支持继承体系,我们看看几种不同的实现方式。 1. 无关联继承 public class Person { private int id; [PrimaryKey(PrimaryKeyType.Identity)] public int Id { get { re... 阅读全文
posted @ 2008-01-23 07:21 JerryZhao 阅读(625) 评论(0) 推荐(0) 编辑
摘要: http://www.rainsts.net/article.asp?id=271 ActiveRecord 的多数据库配置基本沿袭了 NHibernate 的思想,只不过在配置文件结构上作了些调整。 1. 采用继承方式,归纳使用同一数据库的类型。比如 A、B、C、D、E 中 A、B连接到数据库Test1,C、D连接到Test2,而E连接到缺省的Test,那么具体的代码就会是下面这种方式。 pu... 阅读全文
posted @ 2008-01-23 06:58 JerryZhao 阅读(746) 评论(0) 推荐(0) 编辑
摘要: http://www.rainsts.net/article.asp?id=487 Castle ActiveRecord 通过特性处理数据表关联关系。 Many-to-one: BelongsToAttribute One-to-many: HasManyAttribute Many-to-many: HasAndBelongsToManyAttribute 1. O... 阅读全文
posted @ 2008-01-23 06:52 JerryZhao 阅读(436) 评论(0) 推荐(0) 编辑
摘要: http://www.rainsts.net/article.asp?id=485 在业务设计中,对数据往往有确定的格式限制。我们通常的做法是在用户输入界面做这些处理,不过 Castle AR 为我们提供了另外一个备选方案。当我们无法确定类库或服务调用者是否会进行格式检查时,这个功能就非常实用了。要实现这个功能需要 ActiveRecordValidationBase / ActiveRecord... 阅读全文
posted @ 2008-01-23 06:28 JerryZhao 阅读(498) 评论(0) 推荐(0) 编辑
摘要: http://www.rainsts.net/article.asp?id=484 Castle ActiveRecord 对于数据实体的设计非常灵活,大量特性的使用,使得其代码方式非常类似 WCF 的声明式编程。 1. 实体类型 通常我们会选择从 ActiveRecordBase (或其泛型版本) 继承实体类型,它几乎提供了实体所需的所有操作方法。 [Serializable] pub... 阅读全文
posted @ 2008-01-23 06:12 JerryZhao 阅读(749) 评论(0) 推荐(0) 编辑
摘要: http://www.rainsts.net/article.asp?id=483 以前研究过一阵 ORM,基于某些理由,比较喜欢 XPO 和 Castle ActiveRecord。原因不外乎以下几点: "Class to DB",我觉得 ORM 最重要的目的是用一种简便的方式来存储对象。我们对业务分析的重点是对象,而不会优先考虑数据库设计。XPO 和 Castle AR 在这方面做得... 阅读全文
posted @ 2008-01-23 06:00 JerryZhao 阅读(609) 评论(0) 推荐(0) 编辑
摘要: http://www.rainsts.net/article.asp?id=486 ActiveRecord 的 CRUD 操作基本上都是由 ActiveRecordBase 的静态方法完成。其实例(含子类型)方法,以及 ActiveRecordMediator 只是对这些静态方法的包装调用而已。当然,ActiveRecordBase 方法又是对 NHibernate Session 方法的包装。... 阅读全文
posted @ 2008-01-23 05:43 JerryZhao 阅读(556) 评论(0) 推荐(0) 编辑