eXpressApp Framework — Early Access Preview (v20.2)

XAF Team Blog
25 August 2020

As you may already know, we are a couple of months away from our next major update (v20.2). This post details some of the features we expect to ship in November – features you can test today when you download and install our Early Access Preview build.

Active Universal subscribers can download the Early Access Preview (EAP). If you own an active DXperience Subscription and would like to learn more about XAF, you can explore the features described herein by logging onto the DevExpress Download Manager and installing this EAP build in trial mode. Once you do, please take a moment to tell us whether these new features address your business needs. This will help us fine-tune our code before official launch.

Early Access and CTP builds are provided solely for early testing purposes and are not ready for production use. This build can be installed side by side with other major versions of DevExpress products. Please backup your project and other important data before installing Early Access and CTP builds.

This EAP may not include all features/products we expect to ship in our v20.2 release cycle. As its name implies, the EAP offers an early preview of what we expect to ship in two months.

Blazor UI: Report Viewer

The Document Viewer is now available in XAF’s Blazor UI. You can display, print and export Reports created at design time.

Note: This feature has not been integrated into the Solution Wizard in this preview build. Feel free to download our Blazor demo to explore its capabilities: Download | Run Online.

Blazor UI: EF Core Support

Blazor UI can now use EF Core data models. The following example demonstrates use of EF Core with XAF’s Security System: XAF Blazor UI with Entity Framework Core Data Model and Security System.

We expect to add the EF Core option to the Blazor Solution Wizard as a CTP (community tech preview) in our v20.2 release cycle.

Blazor UI: Other Enhancements

The following features were completed in our current release cycle. They are available in both v20.1 and v20.2:

Basic Tutorial

.NET App Security API for EF Core

We officially released the Security System API for EF Core. This update allows you to use XAF’s Security System with EF Core classes for non-XAF applications. In addition to basic CRUD Console and WinForms examples, we added the following training videos:

These tutorials include a quick review of our Security System API and also detail necessary app integration steps. Remember, XAF’s Security System can be used by DevExpress and non-DevExpress customers alike – so please do spread the word.

About | FAQ

Security: Action Permissions

Action Permissions offer fine-grain control over execution of both custom and XAF system Actions within the UI. Action Permissions support is now available for XAF’s Blazor UI. To see it in action, point your browser to the following online demo: Blazor Main Demo (Roles -> Users -> Denied Actions). 

Core: Non-Persistent Object Enhancements

We removed most of the differences between persistent and non-persistent/proxy objects for XAF. You can now edit non-persistent data in a nested/lookup ListView, define custom fields at runtime, filter/sort/validate data, and track changes just as you would for persistent objects.

To avoid boilerplate code, we incorporated the following API enhancements:

  • You can inherit from NonPersistentBaseObject with a key property, change tracking support and enforce best practices for non-persistent classes.
  • The new PopulateAdditionalObjectSpaces method automatically initializes the AdditionalObjectSpaces collection based on registered object space providers.

Documentation

Core: Model Editor for .NET Core and .NET Standard

Our Model Editor for .NET Core and .NET Standard now ships as part of the DevExpress .NET Framework Unified installer. It includes the following enhancements:

  • Visual Studio Color Theme mirroring;
  • Visual Studio keyboard shortcut support (F5, Ctrl+S, etc.);
  • Improved error dialog with copy support;
  • Wait cursor is displayed during long operations.

    Core: Feature Toggles

    We added a DevExpress.ExpressApp.FrameworkSettings.DefaultSettingsCompatibilityMode property to enable/disable feature toggles in a single place. You can choose whether to enable all new features after a version update or retain previous behaviors. Refer to the following article for additional information: Core - FrameworkSettings.DefaultSettingsCompatibilityMode sets default XAF configuration options and feature toggles.

    XPO: Database Schema Migrations

    The Generate Migration Script menu command within XPO’s Data Model Designer now supports External Types. If your ORM Data Model uses XAF classes from the DevExpress.Persistent.BaseImpl library (e.g., BaseObject) as External Types, you can now generate a schema migration script to implement incremental schema updates.

    Database Schema Migrations also include the necessary API to generate migration scripts in code: How to Use the Database Schema Migrations API.

    Breaking Changes

    Before you migrate and test existing projects, we ask that review the following breaking change(s) document: XAF's breaking changes.

    Your Feedback Matters!

    We realize beta-testing is a time consuming process and we are grateful to those who invest time with our preview builds. Find the current implementation lacking flexibility? Feel we've overlooked a valuable usage scenario? Does our current implementation fail to address your business requirements? Please post your thoughts in the comment section below or create a Support Center ticket. We will happily follow-up and do what we can to extend the capabilities of our new products/features.

    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.