.NET Application Framework
UI-Driven Business Object Designer (CTP)
A standard XAF approach for designing a business model for your application is to first implement domain objects or domain components in code and then to customize the auto-generated UI using the Model Editor. In this release, we introduce a new "UI-first" approach so you can start from designing screens as they should appear in the application using a Business Object Designer. These screens are List and Detail Views of business classes. While designing, code is generated for these business classes and Application Model changes are saved. You can therefore run the application and view all the designed screens without having to write a line of code. This application will be running on a newly created database with the tables and relationships corresponding to that which has been designed. Note that you are not limited to the Business Object Designer. The auto-generated code is a standard XAF business class. So, you can extend it by adding additional properties or implementing the required business logic.
Related Documentation: How to: Create a Business Model and Customize the UI in the Business Object Designer
Related Video Tutorial: XAF: Start from UI Prototyping Using the Business Object Designer
XPO-independent XAF Core and Entity Framework Support (CTP)
In this release, we have taken steps towards to the support of the Entity Framework in XAF applications. Now XAF core is free from XPO dependencies and you can use either an XPO-based or Entity Framework-based Object Space. There are, however, built-in modules that are still XPO-dependent - if building an XAF application based on the Entity Framework, you must not use these built-in modules.
Related Documentation: How to: Use the Entity Framework Data Model in an XAF Application
Related Video Tutorial: XAF: The Entity Framework Data Model
Application Server and Security System Improvements
The new Security System introduced in the previous release has been improved as follows:
- Ease of Use
Security System now provides a single Security Strategy which unites the simplicity of the Simple Security Strategy and flexibility of the Complex Security Strategy. As before, users have associated roles, but by enabling a single IsAdministrative option you can grant all possible permissions to a role. Roles can be organized in a hierarchical structure defined via the MasterRoles and ChildRoles collections.
The use of the Standard Authentication is simplified, as the presence of the "Anonymous" user is no longer a requrement. Implementing the Middle Tier scenario, both for Remoting and WCF connection types, is now more straightforward and requires less coding. The use of the Application Server when debugging has been simplified, because of the Console Application Server project template. With this template, there is no need to re-install the Application Server Service when there are changes in your code.
Client-side security can now operate in the integrated mode which does not require a Middle Tier to filter out protected data. The newly introduced Object Space type (SecuredObjectSpace) filters data with respect to the current user permissions.
There are no longer additional requests to the database to check whether or not certain property values should be shown as 'Protected Content'. This information is passed together with data. So, the secured data is loaded faster in List Views.
Server Mode Support in Nested and Lookup List Views
Server Mode is now available for Nested and Lookup List Views. Detail Views that include large collections will be loaded much faster.
Enhanced MDI for Desktop Applications
We have updated our MDIShowViewStrategy. It now uses the Document Manager that ships as part of the XtraBars Suite. Like before, you can choose TabbedMDI or StandardMDI mode. This release, however, introduces numerous new benefits. You can now dock, group and arrange tabs or windows as desired. The arrangement is saved when closing the application and restored when opening it. Delayed loading is implemented for restored tabs to optimize performance (inactive tab controls are not created on application startup). Tabs are now accompanied with context menus, similar to the ones you can find in Visual Studio. Tabs now open faster and close more smoothly.
Enhanced Popup Windows in Web Applications
The usability of dialog windows in ASP.NET application has been improved, as XAF now has the integrated support of the ASPxPopupControl. The browser's popup windows are no longer invoked when an end user opens a lookup, modifies an aggregated object or clicks a PopupWindowShowAction.
Miscellaneous Minor Improvements
- Easy ASP.NET Themes Integration
With this release, all ASP.NET themes are available by default in a newly created XAF application. To apply a theme, you no longer need to extract skin files to the project's App_Themes folder using ASPxThemeDeployer tool - all the required resources will be automatically applied from a theme assembly. In addition, you can add an assembly with custom themes if required. At runtime, end-users will be able to switch between all these themes.
Related Documentation: How to migrate to the new way DevExpress Themes are applied in XAF applications
- Linked Objects are Excluded from Link List Views
Objects that have already been linked to a nested List View are not displayed in the Link List View that is invoked when using the Link Action.
- Improved Usability - Parametrized Actions
We have added a Clear button to Parametrized Actions so that end-users can easily reset the currently entered text
When the input is empty, the text specified via the NullValuePrompt option is displayed.