Stimulsoft ASP.NET MVC报表教程:在报表中使用业务对象

原创|使用教程|编辑:郑恭琳|2019-10-31 15:28:27.950|阅读 17 次

概述:本示例说明如何使用Business Objects集合创建报表。Business Objects是一种对象类数据,可使用其以不同的结构表示数据:表、列表、数组等。此示例使用Business Objects的两种变体——IEnumerable和ITypedList。

相关链接:

立即点击下载Stimulsoft Reports.Net最新版

本示例说明如何使用Business Objects集合创建报表。Business Objects是一种对象类数据,可使用其以不同的结构表示数据:表、列表、数组等。此示例使用Business Objects的两种变体——IEnumerable和ITypedList。

例如,创建两个不同的视图-ViewIEnumerable和ViewITypedList。每个视图都有自己的GetReport操作处理程序。您还需要定义ViewerEvent操作。

@using Stimulsoft.Report.Mvc;
...
@Html.Stimulsoft().StiMvcViewer(new StiMvcViewerOptions()
    {
        Actions =
        {
            GetReport = "GetReportIEnumerable",
            ViewerEvent = "ViewerEvent"
        }
    })
...
@Html.Stimulsoft().StiMvcViewer(new StiMvcViewerOptions()
    {
        Actions =
        {
            GetReport = "GetReportITypedList",
            ViewerEvent = "ViewerEvent"
        }
    })

另外,我们需要在控制器中添加这些操作。GetReportIEnumerable操作将加载IEnumerable报表并为其注册数据。以类似的方式,GetReportITypedList操作将加载ITypedList报表并为其注册数据。

在将结果传输到查看器的客户端之前,请调用CheckReference()特殊方法。该方法在报表ReferenceAssemblies集合中添加了对当前项目的程序集的引用,有必要访问在此应用程序中编译的业务对象。可选地,业务对象可以从另一个程序集中获取。

public ActionResult GetReportIEnumerable()
{
    StiReport report = new StiReport();
    report.Load(Server.MapPath("~/Content/Reports/BusinessObjects_IEnumerable.mrt"));
    report.RegData("EmployeeIEnumerable", CreateBusinessObjectsIEnumerable.GetEmployees());
    CheckReference(report);
    return StiMvcViewer.GetReportResult(report);
}
public ActionResult GetReportITypedList()
{
    StiReport report = new StiReport();
    report.Load(Server.MapPath("~/Content/Reports/BusinessObjects_ITypedList.mrt"));
    report.RegData("EmployeeITypedList", CreateBusinessObjectsITypedList.GetEmployees());
    CheckReference(report);
    return StiMvcViewer.GetReportResult(report);
}
private void CheckReference(StiReport report)
{
    string assemblyName = Assembly.GetExecutingAssembly().ManifestModule.Name;
    List<string> refs = new List<string>(report.ReferencedAssemblies);
    if (!refs.Contains(assemblyName))
    {
        refs.Add(assemblyName);
        report.ReferencedAssemblies = refs.ToArray();
    }
}

ViewerEvent操作处理所有查看器事件(切换页面、缩放、打印、导出、交互等),并使用ViewerEventResult()静态方法将答案返回给客户端。

public ActionResult ViewerEvent()
{
    return StiMvcViewer.ViewerEventResult();
}

在下面的屏幕截图中,您可以看到示例代码的结果。

Stimulsoft ASP.NET MVC报表教程:在报表中使用业务对象

下载示例代码



标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果

登录 慧都网发表评论


暂无评论...

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
title
相关厂商
相关产品
Stimulsoft Reports.Net

一个基于.NET框架的报表生成器,能够帮助你创建结构、功能丰富的报表。报表设计器界面友好,使用便捷,让你轻松创建所有报表。

Stimulsoft Reports.Ultimate

用于创建报表和仪表板的通用工具集,支持多种报表导出格式,拥有简单且强大的报表引擎

在线
客服
在线
QQ
电话
咨询
400-700-1020
购物车 反馈 返回
顶部
在线客服系统
live chat