Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Implementing C# Business Objects (CSLA)

We are about to commit to implementing Rocky Lhotka's CSLA as an application development Framework for our Visual Studio 2008 solutions. I would like to test the water on SO and am particularly interested in developer's opinions of the approach in comparison with other ORMs such as Entity Framework or nHibernate.

Also, what is the learning curve like and is it as easy (as I have heard) to maintain the applications written to this methodology?

Also would be very interested to hear from any Public Sector (especially Government Agencies) who have implemented this.

Thanks,

MaS

like image 773
miPwn Avatar asked May 09 '26 12:05

miPwn


2 Answers

CSLA is not an ORM framework. It is a framework for implementing business objects. However, there are code generators available which can generate data access code for you. The CSLA framework is based on Active Record Pattern. This pattern will not scale for large scale project. In my opinion, you should implement a prototype. The goal of the prototype should be to:

  1. Define a layering Scheme
  2. Unit Testability of Classes
  3. How the framework plays well with other framework
  4. How it fits with other OR mapping tools
  5. Learning Curve

If your evaluation seems to be positive against the above items, then go for it. In short, there should be a proper justification for using such a framework. You should not go with some one's advice, rather try it out by your own.

like image 92
Anand Patel Avatar answered May 11 '26 01:05

Anand Patel


The learning curve of CSLA isn't too bad but be prepared to spend some time reading in the book. We have taken care of a lot of the learning curve for you by generating a DAL (Parameterized SQL or Stored Procedure support) for you, so it adds an ORM feel to CSLA only because it manages the DAL for you if you choose. But you can completely use it as just a set of BO templates. I find that active generation makes it much easier to upgrade to newer versions of CSLA as well as add functionality without having a strong need for an intermediate class.

Thanks -Blake Niemyjski (Author of the CodeSmith CSLA Templates)

like image 39
Blake Niemyjski Avatar answered May 11 '26 01:05

Blake Niemyjski



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!