Data Management across Multiple Database Engines and ORM Tools
The Traditional Approach
You have to be both an experienced DBA and programmer to create a solid database schema and provide fast, stable access to data across different data engines.
In many instances, managing data using raw SQL or ADO.NET can result in a large collection of stored procedures that are difficult to understand and dangerous to modify. You must have extensive knowledge to design a database schema, mapping it from a business model to the database tables for CRUD, providing access to different database engines, database versioning, stability, performance, reusability, etc. Most ORM that purport to address these issues are rarely silver bullets. They suffer from a lack of support for different database engines, create difficulties in reusability and countless other issues.
The XAF Advantage
Built upon the DevExpress ORM (XPO), XAF provides fast and stable access to data for 14 popular database engines via an object oriented API. The built-in support for Entity Framework and the ability to use third party ORMs provides you absolute flexibility.
XAF ships with a clean and simple object-oriented API to help you manage and query data. It is powered by XPO which has been designed so you never have to concern yourself with the creation of tables, fields, relationships and other low level tasks. Your application can connect to 14 different database engines by changing a simple connection string. In addition to standard data model design, XAF offers two unique choices: UI-First and Domain Components (DC). With the UI-First approach, you can design projections of UI screens and automatically generate a data model. DC makes the creation of reusable business models easier with independence from ORM specifics, easy testing and the emulation of "multiple inheritance".
When building a business application, you will ultimately have to deal with data. If you are using XAF, you don't actually have to create a database in a DBMS, customize tables, fields, etc. And, you won't need to use low-level ADO.NET constructs to access your data. XAF is all about object-based data handling. Instead of direct interaction with a database, you have a clean, simple, object-oriented API to work with data. To provide mapping of objects into database tables, XAF can use either Entity Framework or eXpress Persistent Objects (XPO).
Business Class Library
There are countless common objects that tend to be used across different business applications. Many of these are so basic that they are included in the standard distribution of XAF along with an implementation structure that can be customized or derived as necessary. With XAF, you can choose the things you find useful and ignore those that you do not require.
XAF ships as part of the DevExpress Universal Suite.
XAF Tech Library
Download printer-friendly XAF overviews.
Getting Started Videos
Start from Coding
Reuse the Existing Database
Start from an Entity Framework
Start from an XPO
Start from UI Prototyping