Stimulsoft ASP.NET MVC报表教程:在一个项目中使用查看器和设计器

原创|使用教程|编辑:郑恭琳|2019-10-31 15:50:27.510|阅读 95 次

概述:本示例说明如何在设计器中编辑报表模板、保存模板并在查看器中显示该报表。报表设计器和查看器位于该示例项目的不同视图中。设计器位于Designer视图上,查看器位于Viewer视图上,所有这些视图都有自己的控制器。

# 您正在找协同办公软件吗?点击这里站长给您推荐 #

相关链接:

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

本示例说明如何在设计器中编辑报表模板、保存模板并在查看器中显示该报表。报表设计器和查看器位于该示例项目的不同视图中。设计器位于Designer视图上,查看器位于Viewer视图上,所有这些视图都有自己的控制器。

首先,您需要将StiMvcViewer组件添加到Viewer视图页面。您还需要将StiMvcViewerOptions对象传递给构造函数。所需的最少选项是两个操作——GetReport和ViewerEvent,它们位于操作“Actions”选项组中。

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

接下来,您需要将StiMvcDesigner组件添加到Designer视图页面中。您还需要将StiMvcDesignerOptions对象传递给构造函数。所需的最少选项是两个操作——GetReport和DesignerEvent。为了能够预览和保存报表,请指定PreviewReport和SaveReport操作。

@using Stimulsoft.Report.Mvc;
...
@Html.Stimulsoft().StiMvcDesigner(new StiMvcDesignerOptions()
{
    Actions =
    {
        GetReport = "GetReport",
        PreviewReport = "PreviewReport",
        SaveReport = "SaveReport",
        DesignerEvent = "DesignerEvent"
    }
})

在“Home”主页主视图中,将链接添加到“Viewer”查看器和“Designer”设计器视图。

<h2>Using the Viewer and Designer in One Project</h2>
<br />
@Html.ActionLink("Design Report", "Designer")
<br /><br />
@Html.ActionLink("View Report", "Viewer")

接下来,您需要将所有这些操作添加到适当的控制器。首先,让我们为报表查看器的控制器添加操作。

GetReport操作将使用GetReportResult()静态方法加载报表并将响应返回给查看器的客户端部分。在此方法的参数中,应传递报表对象。例如,加载渲染的报表文件。

public ActionResult GetReport()
{
    StiReport report = new StiReport();
    report.Load(Server.MapPath("~/Content/Reports/TwoSimpleLists.mrt"));
    DataSet data = new DataSet("Demo");
    data.ReadXml(Server.MapPath("~/Content/Data/Demo.xml"));
    report.RegData(data);
    return StiMvcViewer.GetReportResult(report);
}

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

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

接下来,为报表设计器的控制器添加操作。

GetReport操作将加载报表模板,并使用GetReportResult()静态方法将响应返回给设计器的客户端。在此方法的参数中,应传递报表对象。

public ActionResult GetReport()
{
    StiReport report = new StiReport();
    report.Load(Server.MapPath("~/Content/Reports/TwoSimpleLists.mrt"));
            
    return StiMvcDesigner.GetReportResult(report);
}

当您在设计器中打开预览报表选项卡时,将调用PreviewReport操作。在此操作中,您可以获取报表对象并执行任何操作,例如连接到数据。要为客户准备答案,您应该使用PreviewReportResult()静态方法。在此方法的参数中,应传递报表对象。

public ActionResult PreviewReport()
{
    StiReport report = StiMvcDesigner.GetActionReportObject();
    DataSet data = new DataSet("Demo");
    data.ReadXml(Server.MapPath("~/Content/Data/Demo.xml"));
    report.RegData(data);
    return StiMvcDesigner.GetReportResult();
}

当您在设计器中按保存按钮时,将调用SaveReport操作。在此操作中,将报表模板保存在启动设计器时加载的同一文件中。该文件也被加载到查看器的GetReport操作中。为了为客户准备答案,您应该使用SaveReportResult()静态方法。

public ActionResult SaveReport()
{
    StiReport report = StiMvcDesigner.GetReportObject();
    report.Save(Server.MapPath("~/Content/Reports/TwoSimpleLists.mrt"));
            
    return StiMvcDesigner.SaveReportResult();
}

DesignerEvent操作处理所有设计器事件(添加和编辑报表组件、使用数据字典,切换页面,缩放等),并使用DesignerEventResult()静态方法将答案返回给客户端。

public ActionResult DesignerEvent()
{
    return StiMvcDesigner.DesignerEventResult();
}

最后,为Home控制器添加操作。该控制器的操作将重定向到所选视图——设计器或查看器。

public ActionResult Designer()
{
    return RedirectToAction("Index", "Designer");
}
public ActionResult Viewer()
{
    return RedirectToAction("Index", "Viewer");
}

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

Stimulsoft ASP.NET MVC报表教程:在一个项目中使用查看器和设计器

下载示例代码



标签:

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

登录 慧都网发表评论


暂无评论...

为你推荐

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

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

Stimulsoft Ultimate

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

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