XAF — Dashboards, RTF Editor, Backend Web API Service for Blazor, Audit & Security for EF Core (EAP v21.2)

XAF Team Blog
08 September 2021

As you may already know, we are a couple of months away from our next major update (v21.2). This post describes some of the features we expect to ship in October and details what’s inside our Early Access Preview build. If you own an active Universal Subscription, feel free to download this Early Access Preview (EAP) build at your convenience.

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 the 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 v21.2 release cycle. As its name implies, the EAP offers an early preview of what we expect to ship in two months.

ASP.NET Core Blazor

Dashboards Module

You can now use the Dashboard component to design and preview dashboards from within your XAF-powered Blazor app.

Documentation: Dashboards Module Overview.

The Dashboards Module in the XAF-powered ASP.NET Core Blazor application

Office Module (Rich Text Editor)

XAF's Blazor UI now supports the DevExpress Rich Text Editor component (as part of XAF's Office Module).

Documentation: Office (Edit Rich Text & Spreadsheets).

Functional Testing Support

You can test your Blazor or Web Forms application via Easy Test in Google Chrome or Microsoft Edge. Note: We no longer support Internet Explorer (see End of support for Internet Explorer 11).

Documentation: Test XAF Blazor UI Applications.

User Profile Avatar

The Security System allows you to specify a user image/avatar and display it in the top right corner of your application page.

Documentation: How to: Assign an Image to a User.

User image in an XAF-powered ASP.NET Core Blazor application

Enhanced Lookup Editor Buttons

Our Lookup Editor displays a Clear button within the UI if its AllowClear model option is enabled.

The Clear button in an XAF-powered ASP.NET Core Blazor application

Windows Forms

View in Model Action

XAF's new View in Model Action invokes the Model Editor at runtime and automatically expands a model node with settings for the current View or its business class.

View in Model Action

Enhanced Mask Settings in the Model Editor

The Model Editor now invokes the Mask Settings form and allows you to customize the mask used for your WinForms projects. Previously used EditMask and EditMaskType properties are now disabled.

Cross-Platform Enhancements

EF Core Audit Trail (RTM)

The Audit Trail Module now supports both XAF-powered Blazor and WinForms UI apps.

Documentation: Audit Trail Module (EF Core).

The Audit Trail Module in a WinForms and Blazor applications

Web API Backend Service (CTP)

You can now reuse XAF application data, logic, and modules within non-XAF apps via a Web API backend service (Swagger: OpenAPI). This service is available as a part of Blazor projects. To test, create a new XPO-based Blazor project, run the application, and navigate to https://localhost:44318/swagger/index.html. You can also test the implementation by using XAF's MainDemo Blazor application. This demo is installed in the following folder: %PUBLIC%\Documents\DevExpress Demos 21.2\Components\eXpressApp Framework\MainDemo.Blazor.

Documentation: Backend Web API Service (CTP).

Note: We do not recommend use of our new Web API Backend Service for production code. We've made it available to gather feedback and engage those of you considering it for future use.

Web API Backend Service Project

Pre-Built Error Code Diagnostics (CTP)

You can check your solution with pre-built error diagnostics using Roslyn Analyzers. You can view a detailed error report locally or integrate this option into your CI system. The following diagnostics are available in this release:

  • XAF0001: An XPO business object’s constructor invalid declaration detected.
  • XAF0002: An XPO business object’s invalid property declaration detected.

Documentation: Code Diagnostics.

Code diagnostics

.NET App Security API (Role-based Access Control) - Free Offer

Oh, and before I forget...we've got some good news for those considering our .NET App Security API for future use. We expect to ship this product free of charge in about a month or so...

Once our installer is ready, we'll make an official announcement on this blog.

Breaking Changes in v21.2

Before you migrate and test existing projects, we ask that you review the following 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 EAP 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.

Need Faster Support Replies?

Once you create a new XAF ticket in the DevExpress Support Center and select XAF under the Platform/Product field, please review the following help links displayed above the Submit button. These links describe how you can collect callstacks, logs and other important diagnostic information for any .NET error. Once you collect/compile this information, forward it to us along with your support ticket. This information will ensure faster and more accurate replies from support.

Isa_Tahiri
Isa_Tahiri
8 September 2021
AlexanderCPunkt
Alexander C. (Co-Orga GmbH)
Sounds great!
8 September 2021
AlexanderCPunkt
Alexander C. (Co-Orga GmbH)
Actual we cannot migrate our customers to xaf blazor because of the missing navigation between parent and childs (blue hyperlink).

I think the property editor has to have an icon to change to the linked child. Do you have any plans / timeframes to address this issues?

The Dashboard integration looks nice, we will test it out next week.

Best Regards

8 September 2021
AlexanderCPunkt
Alexander C. (Co-Orga GmbH)

Is the Dashboard Module using an IFrame?
What about the dynamic height problem? (actual its fixed on 800px?)


8 September 2021
Isa_Tahiri
Isa_Tahiri

Looks very good !

Can't wait to see more docs on the API topic ! 

9 September 2021
CRM-a7e11f65-1b8d-4d4a-98e6-4c048e960b14
Georgiy G (DevExpress)
@Alexander C. (Co-Orga GmbH): The Dashboards Module does not render its component inside an iframe, but it does adjust its height dynamically - it's not fixed at 800px.
 
9 September 2021
Stanislaw.Tristan
Stanislaw.Tristan
You have mentioned that .NET App Security API will be free. Does this mean that developer will have ability to use it free of charge and without any dependencies from other components/licenses?
9 September 2021
AlexanderCPunkt
Alexander C. (Co-Orga GmbH)
Is it possible to modify the templates with this version?
9 September 2021
Bassam Abdelaal
Bassam Abdelaal

great, but waiting for the big and real important announcements regarding the new grid features (full editing + inline editing + NewItemRowPosition : Buttom) + listview/detailview split mode


right now , those are the most important for us to try XAF Blazor for real app

eagerly waiting..


9 September 2021
Dennis (DevExpress)
Dennis (DevExpress)
@Stanislaw.Tristan: Yes, your understanding is correct. In addition, when you register for a free DevExpress product (such as our .NET App Security API or Xamarin UI Suite), you can use your registered product for as long as your needs dictate. Should an update be made available free-of-charge, you will be notified via email or this website. Updates that are issued free-of-charge can also be used indefinitely. Please refer to the DevExpress End User License Agreement for detailed licensing information.
9 September 2021
Ilya P (DevExpress)
Ilya P (DevExpress)
@Alexander C. (Co-Orga GmbH): Template customization is not ready in EAP. We will do our best to ship it in the release version.
9 September 2021
CRM-1f239870-2da4-40cf-909d-fbe438ff3cae
Daniel K.
Does the Web API Backend Service support EF Core?
9 September 2021
José Enrique
José Enrique
An edit button (inside or beside) lookup editor is a must in orther to migrate to blazor from webforms xaf application. Another possibility would be an action to open related object like in winforms version.
9 September 2021
Vladimir Frizen (DevExpress)
Vladimir Frizen (DevExpress)

@Bassam, we are going to ship the following features in the new Blazor grid in v21.2:

  • editing and popup editing,
  • new row position customization (top and bottom).

We will deliver the inline editing and splitter panes later.

10 September 2021
Stanley (DevExpress Support)
Stanley (DevExpress Support)

@Daniel K.


EF Core is not yet supported in a Web API Service. We hope to support it in the future. Unfortunately, I cannot give you any estimated time frames.


10 September 2021
Ivan Argudo
Ivan Argudo

Web API Backend Service (CTP). Sounds great. I think this will be a real improvement in terms of API. I can not wait. Please move forward with this feature. 

10 September 2021
Evgeniy Meyke
Evgeniy Meyke
Fantastic. Web Api + swagger especially.
10 September 2021
John E. Salichos
John E. Salichos

Web API Backend Service is awesome.

Issue: Authorization only works using the application cookie (e.g. call it from swagger). Can't find a way to use authentication with authorization token returned from ​/api​/Authentication​/login.  I try to use authorization token with header Authorization and value Bearer <token> but I can't make it work!


Any ideas?


11 September 2021
CRM-dbab47b0-ea5e-4972-bbf9-8f066e02d212
Paul

How is this issue?  

https://supportcenter.devexpress.com/ticket/details/t996541/blazor-new-rows-are-displayed-with-the-same-content-if-new-objects-have-the-same-key 

will you fix it in this version as well?

this issue causes the whole solution not operable for basic CRUD scenario.

12 September 2021
Vladimir Frizen (DevExpress)
Vladimir Frizen (DevExpress)
Hi Paul,


This issue fix is in our plans, but the solution is rather complex. Currently, I cannot give you any time frame when we resolve the issue. We will update the mentioned report once we have any news.

 

13 September 2021
Achmad Mulyadi
Achmad Mulyadi
I bet this Web API Backend Service will be a game changer here, I'll go download and test it.
14 September 2021
CRM-abdd402c-730d-4784-ad09-7763b794c612
AW

Hello Team,

I wanted to know when Production ready version will be available for Web API Backend Service?? 

We are currently writing our own API for our application, but if this will be available in October then we can use it our application. (Not final Production ready version but may be version that we will be able to use in our Application Production)
 

 

15 September 2021
Achmad Mulyadi
Achmad Mulyadi
@John E. Salichos indeed, but I think it was related to AddAuthorization extension method that missing from OData v8 library and I don't see any further reply from ASP.NET core team on that. I suppose XAF team will have a good solution in 2 months of time.
15 September 2021
Kartal TURGUT
Kartal TURGUT
Any improvements about blazor grid batch edit? Template customization, ActionContainerHolder, 

ICustomFunctionOperatorFormattable support?

15 September 2021
Kartal TURGUT
Kartal TURGUT
Also CssClassName support for ModelEditor DetailView items?
15 September 2021
Vladimir L (DevExpress)
Vladimir L (DevExpress)
@John E. Salichos:
Thank you for your interest in XAF's Web API service. We hope to publish a sample with JWT authentication in v21.2 Beta in 4-5 weeks.
15 September 2021
Vladimir L (DevExpress)
Vladimir L (DevExpress)
@AW. We can't give your exact time frame when XAF's backend service is production ready. If you cannot wait, we also recommend that you try a manual service implementation as per our examples in https://github.com/DevExpress-Examples/XAF_Security_E4908. We welcome your feedback once you have had an opportunity to test it for your use-case scenarios.
15 September 2021
WhatCouldPossiblyGoWrong
WhatCouldPossiblyGoWrong

The Web API will be awesome, really looking forward to that, pleasepress on with that ASAP !

16 September 2021
Dennis (DevExpress)
Dennis (DevExpress)
@ALL:
Thank you for your interest. 
Would you please clarify how you see possible uses of XAF's backend service in non-XAF apps (please list specific use-case and deployment scenarios, application types, etc.)? Please contact us in the DevExpress Support Center on this: https://devexpress.com/ask - thank you in advance.
16 September 2021
Denis Sikic
Denis Sikic
This looks great guys, but I really need right click contact menus on grids with column chooser and related functions!!
16 September 2021
Christoph Weinzierl-Heigl [msg]
Christoph Weinzierl-Heigl [msg]

Really awesome work with regards to the WebAPI! I've been using my own code mixing XAF ASP.NET Forms with Web API 2 (non .NET Core) including Swagger, etc and also reusing the Logon information from XAF which allows utilizing the security system to filter data based on user rights. So having this out-of-the-box is right up my alley and will definitely be used by us once we migrate our WebForms app to Blazor (which will probably be sometime next year).

A couple of questions related to this WebAPI come to mind tough, regarding for instance swagger configuration, API versioning, etc.

And finally, I do have a question with respect to sunsetting IE11 support: What are the implications, if any on the XAF ASP.NET WebForms EasyTest functionality? Will we finally get support for running classic ASP.NET WebForms EasyTests in other browsers?

16 September 2021
Arkady (DevExpress)
Arkady (DevExpress)

@Christoph Weinzierl-Heigl
Thank you for your interest. Yes, we finally supported EasyTest for Blazor and WebForms and you can run tests in Google Chrome or Microsoft Edge (Chromium). Currently, you can refer to the Test Blazor UI Applications
 article for more information about EasyTest in Blazor. Similar functionality will be available for WebForms as well.

17 September 2021

Please login or register to post comments.