eXpressApp Framework Roadmap 2020 - Your Vote Counts

XAF Team Blog
10 December 2019
EDIT: Here are our final roadmaps: 2020 Roadmap and 2021 Roadmap

It's All 'Bout the Blazor, Blazor, Blazor

XAF v20.1 will include a CTP version of Blazor UI with XPO ORM for data access. XAFers will be able to create Blazor Server apps using the Solution Wizard (Blazor WebAssembly support is postponed until officially released by Microsoft). We expect to ship the following functionality for desktop and mobile apps:
  • Navigation control with group and item hierarchy.
  • Main menu with all standard XAF command types (buttons, popups, input/search boxes, drop-down menus).
  • Grid List Editor with sorting & grouping.
  • Detail form layout with group and tab controls.
  • Property Editors for all data types (no advanced editors for criteria, RTF, etc.).
  • Simple forms authentication with a login and password, role-based authorization and basic user/role management with access rights created in code (no specialized permission editors in the UI).
  • Data input validation with RuleRequiredField, RuleCriteria, RuleRange and other popular rules.
  • Multiple UI themes and a runtime theme chooser (similar to the 'gear' in the top-right corner of https://demos.devexpress.com/blazor/).
By our second release of 2020 (v20.2), XAF’s Blazor UI should be ready for production use. We hope to include additional XAF modules (please cast your vote below), online documentation, support for UI customization and advanced CRUD usage scenarios (as well as custom control integration). We also hope to support more end-user customization capabilities once they are included within individual DevExpress Blazor controls (for instance, grid column filters, add/remove columns, data export, inline edit).
We will continue to update XAF’s online Blazor demo with new features as they become available. Our next update (in 1-2 weeks) should include support for collection, reference, enumeration, Boolean, image and other data editors.

Housekeeping

  • We want to remove Visual Studio dependencies from the design-time Model Editor to increase stability and performance. We like the WPF designer that runs as a separate process and draws itself inside the Visual Studio frame. This will also help us support the Model Editor in .NET Core 3+ and .NET Standard 2+ projects (v20.1).
  • We will also incorporate a number of usability enhancements to the Model Editor based on user feedback - please let us know if you have any issues with this editor (v20.1).
  • We will monitor Microsoft updates with regard to the component designer in .NET Core 3+ and see if we can support our Application, Module, Controller and Action Designers. We will also support the SDK-style project format for all XAF design-time tools (v20.1, v20.2).
  • We will add support for Visual Studio vNext, .NET 5 and C# 8.0 features like Nullable Reference Types (v20.2).

Security System

We hope to publish Blazor, Xamarin and WPF examples for XAF's User Authentication and Group Authorization API powered by the XPO ORM (see our GitHub repository for more information). To make these examples more elegant and modern, we've thought about the following enhancements: 
  • Introduce asynchronous versions of popular security APIs (IsGranted, CanRead, CanWrite, CanDelete, etc.). 
  • Support token-based authentication.
  • Simplify XAF's security system integration with the help of utility libraries (they will encapsulate boilerplate code). 

We hope to support Entity Framework Core to help more DevExpress and non-DevExpress customers benefit from XAF's Security System. In v20.1, we will introduce a secured Object Space for EF Core 3.1+ and examples for corresponding platforms. Later in v20.2, we will support EF Core in our Blazor UI. We will decide on the EF Core support for WinForms UI based on user demand. Please share your thoughts on this subject in the survey below.

WinForms UI & Core

  • We hope support the following asynchronous operations out-of-the-box in the WinForms UI based on IObjectSpaceAsync introduced in v19.2: open List or Detail View, save View changes, save audit data (v20.1). If you are missing important use-case scenarios, please specify them in comments below.
  • We will support basic Entity Framework Core usage scenarios (v20.1) – those needed for XAF's Security System in non-XAF apps and Blazor UI (see above).
  • We want to rewrite our Tree List Editors module and support inplace data editing (v20.1), better filtering options and more features (S30514S30735 S38121) based on user feedback (v20.2).
  • We want to enable enhanced WinForms Filter and Expression editors in the Model Editor and within built-in List and Property Editors (v20.2).
  • We will make a number of Non-Persistent/proxy object enhancements (v20.2): support for filtering; propagate FindObject, CommitChanges, Refresh and other methods from NonPersistentObjectSpace to AdditionalObjectSpaces (T509228); support CRUD operations with non-persistent objects in a nested ListView of a persistent object DetailView (T486427T510338T695631).

ASP.NET WebForms UI

Our primary focus will be on XAF’s new Web & Mobile UI for Blazor. This notwithstanding, we will do our best to address the needs of existing ASP.NET WebForms UI users.

Your Feedback Counts

Though we want to deliver everything (and deliver it yesterday), we can’t make any guarantees. As always we welcome your comments and specific usage-scenarios. The more you share, the better we can understand your business needs now and into the future.

Before we proceed to the 2020 Roadmap voting, please share your experience with the features we released in 2019.

Free DevExpress Products - Get Your Copy Today

The following free DevExpress product offers remain available. Should you have any questions about the free offers below, please submit a ticket via the DevExpress Support Center at your convenience. We'll be happy to follow-up.
No Comments

Please login or register to post comments.