彩票走势图

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

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

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

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:

立即点击下载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报表教程:在报表中使用业务对象

下载示例代码


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP