The Business Object Model is the heart of your application.
It was designed from a business model and should hold all key concepts of your application. Hence all hand-coded extra business rules, concepts or operations should be placed in the Business Object Model (BOM). Moreover, CodeFluent generates applications in a Service Oriented Architecture (SOA), meaning that the BOM is the only layer having a direct access to the data layer, which then implies that all upper layers - UI or Services for instance - also consume the BOM.
Therefore whenever a developer should extend the application's BOM manually, he should always do it in the BOM layer, so that his extension will reflect throughout all layers of the application. Furthermore, as it is the only layer which has a direct access to the data layer, it will guarantee the best performances when manipulating all your business entities.
The BOM is composed of classes, each class being the result of an entity created earlier, at design time. The properties that were designed will appear as properties of the generated classes, and the same principle is true for the designed methods. As a consequence, if we designed a Customer entity for instance, our BOM will contain a Customer class, and each properties, methods, and designed rules will be contained in that class.
Each generated entity contains a default set of features.
Basically, each entity holds a default set of methods such as Load, Save, Delete, - ergo CRUD operations are supported by default - or Validate - ergo validation as well -. Of course more methods (and features) are available than those four, but added to those methods, the generated entity class and its corresponding collection class implement by default a good set of interfaces, helping the developer in his further developments. It's also important to highlight that all generated classes are serializable which takes out a real pain out of the developer without necessitating any extra-work.
Now that you know the big picture, lets dive into each of the available features.
In This Section
Using The Business Object Model
Provides global information on how to use the generated Business Object Model (BOM).
Provides information on how to configure your application to be able to use the Business Object Model (BOM).
Provides information on how entities can be identified at runtime.
Provides information on available events in the Business Object Model (BOM).
Provides information on the data binding feature available in the Business Object Model (BOM).
Provides information on the data validation feature available in the Business Object Model (BOM).
Provides information on the security features available in the Business Object Model (BOM).
Provides information on the concurrency feature available in the Business Object Model (BOM).
Provides information on the transaction features available in the generated Business Object Model (BOM).
Provides information on the localizing features available in the generated Business Object Model (BOM), and how you can capitalize on those in order to localize your application.
Comparing, Copying and Cloning Entities
Provides information on classic operations such as copying, cloning, comparing or tracing entities.
Provides information on the sorting and paging features available in the generated Business Object Model (BOM).
Provides information on the Binary Large Object (Blob) management features available in the generated Business Object Model (BOM).
Provides information on how LINQ To SQL is supported in the Business Object Model (BOM).
Provides information on the caching feature available in the generated Business Object Model (BOM).
Provides information on debugging features available in the generated Business Object Model (BOM).