当前位置:  开发笔记 > 编程语言 > 正文

ASP.NET MVC中的Crystal Reports

如何解决《ASP.NETMVC中的CrystalReports》经验,为你挑选了2个好方法。

我知道在ASP.NET MVC中使用服务器端控件是禁忌,但我们有一长串的水晶报告,该公司已经为之前的应用程序生成了我想要用于新ASP的水晶报告. NET MVC应用程序.

是否有适当的方法在ASP.NET MVC中使用水晶报表?如果是这样,怎么样?



1> coderguy123..:

实际上很简单.只需添加以下对MVC项目的引用:

CrystalDecisions.CrystalReports.Engine

CrystalDecisions.ReportSource

CrystalDecisions.Shared

使用如下的Action方法:

C# :

using CrystalDecisions.CrystalReports.Engine;

public ActionResult Report()
    {
        ReportClass rptH = new ReportClass();
        rptH.FileName = Server.MapPath("[reportName].rpt");
        rptH.Load();
        rptH.SetDataSource([datatable]);
        Stream stream = rptH.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
        return File(stream, "application/pdf");   
    }

VB.NET:

 Imports CrystalDecisions.CrystalReports.Engine

 Public Function Report() As ActionResult
    Dim rptH As New ReportClass()
    rptH.FileName = Server.MapPath("[reportName].rpt")
    rptH.Load()
    rptH.SetDataSource([datatable])
    Dim stream As IO.Stream = rptH.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat)
    Return File(stream, "application/pdf")
 End Function


很好 - 非常优雅(Crystal在同一个对话中报道和优雅 - 提示世界末日)

2> leppie..:

我们在工作中遇到过类似的情况.

我们使用的解决方案:

为报告创建单独的目录

为报告创建正常的ASPX页面

我们还没有看到任何问题(除了正常的Crystal之外).


如何从路由中排除目录?
推荐阅读
郑谊099_448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有