Built-in Business Classes for Most Popular Scenarios
2 min to read
Many applications contain similar business classes: Person, Address, Organization, PhoneNumber and so on. There is no need to develop these classes from scratch and modify them for use in the eXpressApp Framework applications. We provide you with the Business Class Library - a set of classes that you will need most frequently. This library also includes a number of interfaces you will need to provide proper interaction of your data with some XAF modules. This topic details the Business Class Library.
The Business Class Library consists of three assemblies.
Contains ready-to-use XPO persistent classes.
Contains ready-to-use Entity Framework Code First classes.
Contains interfaces and helper classes used in XAF Extra Modules. Classes implementing these interfaces are available in the two DevExpress.Persistent.BaseImpl.* assemblies listed above.
The Business Class Library provides the following capabilities.
You can use classes from the DevExpress.Persistent.BaseImpl.v19.2.dll and DevExpress.Persistent.BaseImpl.EF.v19.2.dll assemblies as they are.
You can extend persistent classes from the DevExpress.Persistent.BaseImpl.v19.2.dll and DevExpress.Persistent.BaseImpl.EF.v19.2.dll assemblies assembly to add a specific functionality.
The eXpressApp Framework installation provides sources of the DevExpress.Persistent.BaseImpl.v19.2.dll and DevExpress.Persistent.BaseImpl.EF.v19.2.dll assemblies. They are located at %PROGRAMFILES(x86)%\DevExpress 19.2\Components\%PROGRAMFILES(x86)%\DevExpress 19.2\.NET Core Desktop Libraries\Sources\DevExpress.Persistent\ by default. You can use the sources as an example when developing your own business class library. In addition, you can modify the sources and recompile this assembly if required. For details, refer to the How to: Recompile the Business Class Library topic.
You can provide custom implementation for a particular interface from the DevExpress.Persistent.Base.v19.2.dll assembly and your custom class will be properly handled by XAF.
The Business Class Library assemblies do not have references to other XAF assemblies. This allows you to use services defined there (like validation, audit trail, etc.) in non-XAF applications.