CSLA.NET是完完全全的充血模型,一个对象里面包含属性,业务方法,验证规则,数据访问等.
CSLA所“声称”提供的功能:
1.支持完全面向对象的编程模型 只是支持,如果使用者不面向对象的话也扯淡,使用者如果面向对象,C#就支持完全面向对象编程
2.支持对象的N层撤销 当然这个功能在Webform中并不可能提供
3.支持对象的业务状态的跟踪,是否脏数据,是否已删除 不过这个你得注意你的对象的生命周期,不要以为多次请求,多次postback后,它还能跟踪到你的对象
4.使整个系统开发更规则化, 业务逻辑,规则验证,数据访问,权限验证各归各处,便代码风格会相对统一,也就会显得整个框架更容易使用。因为你不必知道你的数据访问是怎么被调用了,你的验证都在哪些地方被调用了,它底层都帮你调了。不是它的强大,而你的无知。如果你仔细看过它的源代码,你会一目了然。反而过来,这样的规范化必须也是要付出代价的。
5.有较高的灵活性和系统性能 至今还不相信的事实
6.业务层与UI分离,可以采用任何UI框架,支持多种UI绑定 我想我们用烂了的三层架构也有这个功能
7.支持WebService,Remoting,WCF等访问,手动配置即可 这个可以有,新概念:数据访问(DataPortal),移动对象所造就的。不过你是否有看过它的原理,或许这个才是你可以有的。 同样这也会带来一定程度的负面影响,相信你看过会也会有同感。
8.对象和属性,方法的授权 这个可一定要考虑下性能
CSLA比较适合于模型驱动,东西少比较紧凑,除了模型类就没别的了。
http://www.cnblogs.com/lonely7345/archive/2010/01/29/1658881.html