Xafari x011 is Now Available
Less code. Better performance.Must-have framework for your next XAF application.
What's New in Xafari x011
UI Improvements
DX NewStyle Support
Xafari x011 supports DX NewStyle for web applications. It allows combining usability of touch-screen applications with the advantages of using ASP.NET for web development.
Improved Pop-up Windows Mechanism
We have improved pop-up windows mechanism for x011. It allows defining the maximum windows nesting level (MaxNestedLevel), enabling windows of the second and higher levels to open approximately in 300ms and faster, depending on their content.
Other changes include:
- ListViewAndDetailView support
- CustomizeSettings for MVCxTreeListEditor and MVCxGridListEditor
- Support of NonPersistentObjectSpace for MVCxTreeListEditor and MVCxGridListEditor
Xafari Localizer Class
Starting from x011, Xafari Framework has a new XafariResourceLocalizer class that provides a unified approach to localizing Devexpress XAF and Xafari applications. It makes localization process more flexible, allowing to create/modify localization in a few simple steps, change the localized properties right in the model editor, and customize localization in both runtime and design-time.
Xafari Components
Xafari Console
A new module Xafari.Console contains classes for running a XAF application in a console mode.
The module supports XafariApplicationContext and AppModule parameters when starting a XAF application, provides an opportunity to develop component tests for the console application and integrating it in the XAF application or in the AppStarter, and simplifies development of a console for a XAF application.
Template for a console application has been included in the new Xafari application template for Visual Studio.
RunCmd
RunCmd has been updated using the new Xafari.Console module, keeping all existing functionality.
Read more about Xafari Console in the documentation.
Extension Framework (XF)
We have significantly simplified the use of the Extension Framework (XF) module. The main improvements are:
- the model of generated persistent types no longer includes inherited persistent classes
- opportunity to register entities through attributes above types
- no code compilation is necessary for XF, which accelerates model designer work with XF
- extensions are more visible in the general list of entity attributes, there is a separate attribute for each extension.
For more information refer to the Extension Framework documentation.
AppStarter
AppStarter is new utility in Xafari x011, which starts a Win application deployed on a server and creates its local copy. It allows running and working with different versions of the same application, configuring individual lists of application versions to be run for each user, and creating a single set of versions when different versions are used by different groups of users. It also helps to avoid working with outdated application assemblies.
When used in combination with Xafari.Accelerator, AppStarter reduces application start time on the client computer by 200%.
Easy Test for Win Components
Xafari x011 introduces three new modules that enable the use of Easy Test for Xafari Win components.
Xafari.EasyTest.WinAdapter allows testing Xafari Win components using Easy Test, and Xafari.ScriptRecorder и Xafari.ScriptRecorder record user action in the script. All three components are based on the corresponding Devexpress XAF components, but expand their functionality on Xafari components.
Read in Xafari documentation.
Starting from Xafari x011, we are introducing a new ERP concept, which aims to make the structure and logic of an ERP application as simple and clear as possible. The core of the concept is splitting the application into several groups and subgroups of modules, each containing specific functionality: platform-dependent and platform-specific module groups.
The main new components that implement this vision are:
- AppModule
- ApplicationHost
- Xafari Solution Wizard
- Xafari Template Gallery
Read more about new Xafari ERP Concept in the documentation.
AppModule
AppModule is a special module that declares and initializes parameters of a Devexpress XAF application. All parameters have to be defined only in AppModule, which guarantees that configuration of all use cases in the application is the same, thus preventing conflicts that might arise when running the application. AppModule is platform-independent, so it adds only platform-independent modules to the application, while platform-specific modules are added during application initialization for each platform.
ApplicationHost
ApplicationHost is a new class in Xafari x011 that, upon launch of a XAF application:
- Initializes the environment for the application
- Create, initializes and starts XafApplication object in the correct environment
- Loads all platform-independent modules listed in AppModule
- Determines which platform-specific modules have to be added (via Application Context)
- Ensures that all standard Xafari features are available.
Xafari ERP Solution Wizard
Xafari ERP Solution Wizard allows creating a new application in a few steps by choosing a target platform (Win, Web, MVC etc.) and object-relational mapping (XPO, DC). To simplify using it for XAF developers, it has been designed similar to XAF Solution master.
The wizard works with the following versions and editions of Visual Studio:
- Express, Community, Standard, Pro, Premium, Ultimate, and Enterprise editions
- VS 2010, Ultimate 2010, 2012, 2013, and 2015 versions
Starting from Xafari x011, the mechanism of dynamic properties works via a special manager that creates and works with a separate application model. It launches the model asynchronously and does not affect the start time of the application.
Xafari.MVC in x011 uses a new mechanism when working with modal windows, which reduces response time for their opening and helps to minimize memory leaks in the client application.
See a more detailed list of improvements in Xafari Framework in the documentation.