摘要:DevExpress XAF是一款强大的现代应用程序框架,允许同时开发ASP.NET和WinForms。DevExpress XAF采用模块化设计,开发人员可以选择内建模块,也可以自行创建,从而以更快的速度和比开发人员当前更强有力的方式创建应用程序。
DevExpress XAF是一款强大的现代应用程序框架,允许同时开发ASP.NET和WinForms。DevExpress XAF采用模块化设计,开发人员可以选择内建模块,也可以自行创建,从而以更快的速度和比开发人员当前更强有力的方式创建应用程序。
在DevExpress XAF v24.2新版中全新发布了支持.NET 9、EF Core 9等,欢迎下载最新版体验!
支持.NET 9
DevExpress XAF UI和Web API服务完全支持.NET 9 (v24.2.2+)。
.NET 8、.NET Framework 4.6.2、Visual Studio 2019 - 最低支持版本
为了简化迁移过程,DevExpress项目转换器将尝试自动将XAF项目重新定位到.NET 8。
官方也将尝试更新第三方软件包到最新的兼容版本,在可能的情况下(例如System.Text. Json, Microsoft.AspNetCore. *、Microsoft.EntityFrameworkCore. *等) - 在Directory.Packages.props文件中有近200个已知的依赖项。
这种自动化可以节省数小时的手工工作,特别是对于那些拥有大型.NET框架或.NET解决方案的XAF客户。当然,如果您的团队已经使用道具文件和中央包管理(CPM),那么您可以跳过项目转换器并手动更新所有内容。
源代码生成器 - 支持.NET Core和可用性增强
全新的Source Builder(源代码生成器)作为DevExpress统一组件安装程序的一部分发布:“~\DevExpress 24.2\Components\Tools\Components\DevExpress.SourceBuilderTool.exe”,这个工具可以重建.NET Core产品库的源代码(以前只支持.NET Framework)。
DevExpress Source Builder(源代码生成器)的系统和环境要求如下:
Visual Studio 2022和ASP. NET MVC 3(如果您重建DevExpress MVC项目)
.NET 8 SDK 和 .NET Framework 4.6.2开发者包(下载)
NuGet.exe v6.0(或更高版本)必须与DevExpress.SourceBuilderTool.exe(下载NuGet.exe)在同一文件夹中
Node Package Manager (NPM)(安装NPM)
以admin权限运行以下命令重建DevExpress程序集和NuGet包(包括德语(DE)、日语(JA)和西班牙语(ES)的本地化程序集/包):
CLI
DevExpress.SourceBuilderTool.exe "c:\program files\devexpress 24.2\components" -nuget
EF Core 和 XPO ORM
支持EF Core 9
对于XAF和相关后端Web API服务的EF Core 9支持在v24.2中正式发布,EF Core 9(或EF9)是实体框架的最新生成就绪版本。
EF Core - 计算字段
v24.2在EF Core中为服务器端计算字段实现了一个更简单的解决方案。请注意,在Server和InstantFeedback模式下,您可以通过计算属性对List View数据进行排序、分组或筛选。
使用DevExpress.ExpressApp.DC.CalculatedAttribute或DevExpress.ExpressApp.DC.PersistentAliasAttribute来指示是否计算属性的值,下面的代码片段演示了如何创建一个带有计算属性的类:
C#
using DevExpress.ExpressApp.DC;
public class Product : BaseObject {
// ...
public virtual decimal Quantity { get; set; }
public virtual decimal Price { get; set; }
[PersistentAlias("Quantity * Price")]
// or [Calculated("Quantity * Price")]
public decimal TotalPrice {
get { return EvaluateAlias; }
}
}
EF Core - 软删除
v24.2支持EF Core软删除(又名XPO的延迟删除),用于XAF UI和Web API服务驱动的应用程序。
对于软删除或延迟对象删除,ORM将对象标记为已删除,而不会立即从数据库中物理地删除它们。此技术有助于在删除由其他实体引用的对象时避免数据库异常。
v24.2还为现有数据库表创建了一个自动转换器(以添加新的GCRecord列)。
EF Core - 过滤功能现在与XPO ORM相当
DevExpress XAF v24.2引入了XAF中EF Core的计算属性(见上文),这一变化需要方便地访问自定义IsExactType和IsInstanceOfType函数,而不管应用程序中使用的ORM是什么。
为了实现奇偶性,官方将自定义的IsExactType和IsInstanceOfType函数从DevExpress.Xpo组件移动到DevExpress.Data组件。
这个变化允许这个功能在EF Core中工作。
XPO - DateOnly/TimeOnly支持
在v24.2中,XAF在.NET应用程序的XPO连接提供程序中支持DateOnly/TimeOnly。这种增强有利于XAF/Reporting/Dashboards和其他产品,因为XPO是内部数据访问代码的核心。作为其中的一部分,我们还更改了SQL类型Date和Time的列映射。
XPO - 连接提供程序更新
现在支持以下最新版本的数据库引擎(适用于.NET和.NET Framework):
PostgreSQL 17.0
Microsoft SQL Server 2022+
Oracle 23ai
MySQL 9.0
Firebird 5.0
来源:科技现场谈