Hi!
I was wondering how the SelfServicing classes would be used within a system.
Generally, as a matter of good practice, we separate the entity classes from CRUD operations. The properties for the entity classes implement some sort of validation that encapsulates some business logic. Another layer of classes built over it calls the accessors/mutators in entity classes and the methods in wrapper classes (over the entity classes). The wrapper classes contain calls to database-specific classes (similar to the DataAccessAdapter) as well as validations that span entities.
When using SelfServicing classes, we have entity classes with data operations (CRUD) within them, along with the business logic for validating the values being assigned to properties (perhaps implemented by modifying the source code generated by LLBLGen Pro). I think it's good enough to go with, unless there's a possibility that the data operations would be moved to web services or some non-database storage mechanism.
What do you think?
-NiTiN