Desktop & Web App UI Framework (Powered by EF Core)
- 5 minutes to read
Line-of-business (LOB) applications that require CRUD, data reporting, scheduling, analytics, validation, auditing, role-based authorization, authentication, localization, and other features are very similar in nature. A typical Office-inspired LOB application allows the user to view, navigate, edit, and export relational data based on user permissions. The DevExpress Cross-Platform .NET App UI (XAF) is an application framework that empowers you to develop such applications with ease.
XAF allows you to focus on business logic. The framework automatically generates the UI for desktop (Windows Forms and WPF) or the web (ASP.NET Core Blazor). XAF integrates reporting, data analytics, security, and many other modules. All of this functionality is available to you as part of our Universal Subscription or our Free 30-Day Trial.
XAF Benefits for Windows Forms Developers
Evolution of User Controls and Project Templates
XAF is a step forward in automation and enhanced productivity for WinForms developers working on applications built with DevExpress. Explore the following hierarchy, where 1 indicates extensive coding and minimal automation:
- Using standard Microsoft UI components only.
- Using third-party UI components like DevExpress.
- Using form and application project templates like WinForms UI Templates, Template Gallery, and WinForms MVVM.
- Using XAF to auto-generate the UI, database, and authorization process; solve typical or routine application development tasks. XAF interconnects all UI components and templates by XAF business logic (for example, open a detail form when a user clicks a grid row, refresh the grid after saving data, filter out protected data based on access rights of the current user, etc.).
- Using business technology platforms like SAP, Salesforce, Microsoft Dynamics, etc.
With XAF, you do not need to configure data grids, editors, and layout in hundreds of application forms. XAF ships with predefined, reusable, and highly customizable templates for data forms and user controls like Property/List Editors or Actions (Menu Commands).
XAF uses an ORM data model and business objects to automatically build the UI. XAF may be considered by WinForms developers who would like to migrate their applications to the WPF platform but are wary of WPF-specific approaches to application development.
Read the following articles for additional information:
Modernized and Secure Data Access
The Solution Wizard scaffolds the XAF WinForms/Blazor UI and Web API backend service with CRUD and additional functionality powered by EF Core: Storage, ORM, and Business Model Design.
XAF offers two Security Tiers for data access and authorization:
- 2-Tier (direct database connections)
- Middle Tier (database connections through a secure API service)
Middle Tier is critical within certain environments/business applications (those that cannot maintain direct database connections to better meet enterprise security standards). With XAF’s Middle Tier application server, EF Core developers can retain standard DbContext
and initiate remote connections to a data store from any .NET client (like XAF WinForms or non-XAF WinForms applications). Read the following topic for additional information: Connect to an EF Core Middle Tier Security Application from Non-XAF Applications.
XAF also offers multiple authentication strategies out of the box. Built-in support includes: OAuth2, JWT, and OpenID. You can also implement a custom authentication strategy as needed.
Modularity
The DevExpress Application Framework includes over 20 ready-to-use packages (Modules), including analytics, reporting, scheduling, security, multi-tenancy (SaaS), and more. Modular architecture allows you to integrate UI theme support, error and audit event logging, data filtering and validation, data printing and doc export, and file and document management.
XAF natively supports Dependency Injection (DI) for ASP.NET Core and WinForms, including third-party Inversion of Control (IoC) Service Containers like Autofac or DryIoC. You can replace or extend prebuilt XAF services, modules, UI forms and individual components, styles, and default behaviors as needs dictate.
Integration
If you work in Visual Studio 2022+ for Windows, the Solution Wizard allows you to speed up application development. Application startup templates are built atop a battle-tested architecture with a modular and layered design, secure database connections and API services, configurable authentication and authorization settings, account management, and e2e tests. Pre-built modules are distributed through NuGet and can be plugged in using Fluent API.
A Step to Modern Web and Mobile Companion Apps
XAF allows you to quickly build an ASP.NET Core Blazor UI based on your ORM data model and built-in XAF modules. Even if you do not plan on migrating from WinForms to XAF’s WinForms UI, you can easily reuse your existing EF Core classes and database, and auto-generate a modern Blazor web browser application in minutes.
XAF also ships with a Backend Web API Service that allows you to access CRUD and other functionality from various types of clients including web, mobile, and desktop applications.