DevExpress Dashboard v23.1版本增强了自定义导出到Excel的功能等,欢迎下载最新版本体验!
DevExpress Dashboard v23.1正式版下载(Q技术交流:523159565)
所有平台
导出自定义仪表板项目到Excel
用户现在可以在WinForms和Web应用程序中将自定义仪表板项导出到Excel (XLS, XLSX),您的用户可以使用Export to下拉菜单启动导出操作(显示在自定义仪表板项的标题中)。
您还可以处理一个新的CustomizeExportDocument事件来自定义生成的Excel文档(用于自定义仪表板项),事件参数允许您获取自定义指示板项数据并自定义生成文档的布局,这些包括:
- e.GetItemData (WinForms)
- e.GetItemData (Web)
- e.GetDashboardItem (Web)
- Documentation: Custom Item Export in WinForms Dashboards
- Documentation: Custom Item Export in Web Dashboards
Pivot Grid Dashboard项目 - 自定义导出
您现在可以处理DashboardDesigner.CustomExport事件来自定义Pivot Grid Dashboard Item导出结果,使用事件参数的e.GetPrintableControl方法来获取和定制可打印文档中的XRPivotGrid控件。
图表仪表板项 - 趋势指标
图表仪表板项现在可以显示趋势线和线性回归指标(跨所有支持的平台),您还可以实现和显示自己的(自定义)趋势指示器,来可视化销售趋势并呈现经济模式。
SqlDataSource - 配置会话
您可以在查询数据库之前建立SQL连接会话:
- 使用ConnectionOptions.IsolationLevel属性设置SqlDataSource的事务隔离级别(对于SQL查询使用SqlQuery.IsolationLevel属性)。
- 实现IDBCommandInterceptor或IDBConnectionInterceptor来拦截、修改和/或抑制MS SQL操作。这包括低级数据库操作,如在会话上下文中执行命令或设置键值对,您可以将值存储在会话上下文中,并在打开连接后执行请求。
ASP.NET Core Dashboard
EFDataSource - 从依赖注入容器中解析DbContext
新的API允许您通知Dashboard控件有关适当的实体框架核心连接上下文。
在依赖注入容器中注册上下文,调用“Startup”类的ConfigureServices方法中的AddDbContext方法来指定所需的连接字符串:
C#
builder.Services.AddDbContext<OrdersContext>(options => options.UseSqlite("MyConnectionString"), ServiceLifetime.Transient);
实现IEFContextProvider接口:
C#
using DevExpress.Data.Entity;
using Microsoft.Extensions.DependencyInjection;
using System;
// ...
public class CustomEFContextProvider : IEFContextProvider, IDisposable {
IServiceScope scope;
public CustomEFContextProvider(IServiceProvider provider) {
this.scope = provider.CreateScope();
}
public object GetContext(string connectionName, Type contextType) {
if(connectionName == "EF Data Connection") {
return scope.ServiceProvider.GetService(contextType);
}
return null;
}
public void Dispose() {
scope.Dispose();
}
}
使用Startup类的ConfigureServices方法注册DashboardConfigurator服务,使用SetEFContextProvider方法配置服务。
C#
services.AddScoped<DashboardConfigurator>((IServiceProvider serviceProvider) => {
DashboardConfigurator configurator = new DashboardConfigurator();
configurator.SetEFContextProvider(new CustomEFContextProvider(serviceProvider));
return configurator;
});
内容安全策略 - 禁止内联样式和脚本
我们改进了ASP.NET Core应用程序中Web Dashboard控件的内容安全策略支持(您可以实现基于nonce的CSP),这允许从承载DevExpress Web Dashboard控件的网页中删除style-src和script-src指令的不安全内联关键字。