Log In
[Expand]General Information
[Expand]WinForms Controls
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Expand]WPF Controls
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Office File API
[Expand]Report and Dashboard Server
[Collapse]eXpressApp Framework
 [Expand]Getting Started
  [Expand]Application Solution Components
   Client-Side Mobile Application
  [Collapse]Business Model Design
    Business Model Design Basics
    Built-in Business Classes for Most Popular Scenarios
   [Expand]Business Model Design with Entity Framework
   [Expand]Business Model Design with XPO
    Non-Persistent Objects
    PropertyChanged Event in Business Classes
   [Expand]Data Types Supported by built-in Editors
    Mapping Complex Types to the Database
   [Collapse]Types Info Subsystem
     Access Business Object's Metadata
     Customize Business Object's Metadata
    Connect an XAF Application to a Database Provider
    Data Annotations in Data Model
    Create and Update the Application's Database
  [Expand]Application Model
  [Expand]UI Construction
  [Expand]Extend Functionality
  [Expand]Data Manipulation and Business Logic
  [Expand]Security System
  [Expand]System Module
  [Expand]Extra Modules
  [Expand]Debugging, Testing and Error Handling
  [Expand]Application Life Cycle
 [Expand]Design-Time Features
 [Expand]Task-Based Help
  Frequently Asked Questions (FAQ)
 [Expand]API Reference
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation
This documentation page describes implementations made in our v17.2 release cycle. To learn about functionality shipping with v18.1, navigate to our updated help file experience at docs.devexpress.com. Learn More

Types Info Subsystem

The majority of the Application Model is generated based on the business classes used in an XAF application. To generate the Application Model, business class metadata is required. In XAF, this metadata is supplied by the types info subsystem, which is a set of classes and interfaces specifically designed to supply business class metadata.

The types info subsystem is presented by the static XafTypesInfo class, declared in the DevExpress.ExpressApp namespace, and the following interfaces.

IBaseInfoThe base interface that supplies metadata on business classes and their members.
IMemberInfoSupplies metadata on a member of a business class.
ITypeInfoSupplies metadata on a business class.
ITypesInfoSupplies metadata on business classes used by an XAF application.
IAssemblyInfoSupplies metadata on an assembly used by an XAF application.

These interfaces are not intended to be implemented in your classes. Instead, they are implemented by a number of XAF system classes that can be accessed from different parts of your application. All of the mentioned interfaces are interlinked. For instance, if you have an ITypesInfo object, you can get information on any business class and its members, or the assembly in which it is declared. If you have an IMemberInfo object describing a property, you can get metadata on the assembly in which the property's owner type is declared.

To learn more about the Types Info Subsystem, refer to the following topics.

Expanded See Also

Is this topic helpful?​​​​​​​