To help us deliver the best possible features for the eXpress Persistent Objects (XPO) ORM library in 2020, please take a moment to review the list below and share your opinions with us.
Housekeeping & .NET Core
There are a number of housekeeping tasks that need to be completed during each release cycle. The following list summarizes our plans for 2020.
- Keep XPO connection providers up to date with the latest database engines and extend support based on user feedback. We will also expand .NET Core connection provider support when more RDBMS vendors join the fray (for instance, we already supported Microsoft.Data.SqlClient in v20.1).
- Introduce more demos and extend learning materials for the main platforms wherein XPO is used (see https://github.com/DevExpress/XPO/tree/master/Tutorials for more information). Note: we will soon demonstrate CRUD XPO operations with the DevExpress WinForms MVVM library.
- Support Visual Studio vNext, .NET 5 and C# 8.0 features like Nullable Reference Types (features that will affect every .NET developer in 2020).
- Implement Web API-based replacements for DataStoreClient and related classes from Transferring Data via WCF Services - all to be used in .NET Core/.NET Standard apps.
SQL Server "Always Encrypted"
We hope to refactor our core to introduce typed query parameters (for instance, null parameters with type information or additional information such as ping). This will help us support Always Encrypted - a very important feature for enterprise customers. Batch updates and operations on slow connections will also benefit from this refactoring. Expect a Beta in v20.1 and a final release in v20.2.
Database Schema Migrations
We want a simpler process to incrementally update database schema and preserve existing data after changes are made to XPO’s data model (AS4684). At present, we handle initial database creation and schema tuning along with basic data model changes only (create tables and columns for new classes and properties). For more complex sync tasks, developers need to create database scripts or specialized helper methods. For instance, XAF's ModuleUpdater ships with the DropColumn, RenameTable, DropConstraint and other APIs for Microsoft SQL Server for this purpose. Our goal is to make this process better than that found in EF Core Migrations. Expect a Beta in v20.1 and a final release in v20.2.
Your Opinion Counts
As always, we look forward to your comments and questions. Please share your thoughts below or email xpoteam@devexpress.com.