不知道大家有没有这样的疑惑,在项目中使用DDD时,领域对象有时候需要调用BO,BO有时候为了实现特殊的数据库操作,又需要跨过Repository直接操作领域对象。
本来负责逻辑运算的BO是不应该和领域对象打交道的,比如将人民币转换成美元,个人感觉是应该放在服务层里面的。
在两个项目中应用DDD之后的结果就是,逻辑BO、事务BO、领域对象、基础架构都混杂在一起,维护不便。而且用了大量自动生成的代码来维护OR映射和领域关系,还有一些的XML和[Attribute]标识的配置文件。
虽然有一些其他的方案能解决上面的问题,比如PURE MVC的消息模式。但是。。。把大部分精力消耗在基础架构上实在不值得,于是就有了现在的KylinORM。
这是一个使用TAG网络来维护实体关系的ORM框架。
[该贴被gameboyLV于2012-03-10 09:56修改过]
attachment:
KylinORM.rar