Ire*_*esh 5 c# asp.net crystal-reports
我正在使用ASP.NET开发一个网站,我想在我的webform中显示一个报告.我使用水晶报告作为我的报告工具.我使用visual studio 2013作为我的IDE.这就是我所尝试过的.(我的SAP版本是13.0.9).
private void loadReport()
{
ReportDocument rpt = new ReportDocument();
rpt.Load("D:\\Report_Test.rpt");
rpt.VerifyDatabase();
CrystalReportViewer1.ReportSource = rpt;
}
Run Code Online (Sandbox Code Playgroud)
上面的代码适用于visual studio 2010但不适用于2013.当我加载页面时,它是空的.没有丢失任何错误.那么,如何使用Visual Studio 2013查看Crystal Report?
要检查的第一件事是报表查看器客户端文件是否可用,我怀疑这是你的问题(你可能会发现它默默地抛出了一个javascript错误!).在IIS中它应该创建一个虚拟目录,如果IIS表达,那么你需要手动移动查看器需要的文件,以下应该有效:
在您的应用程序的根目录中创建一个名为crystalreportviewers13文件夹的文件夹,将文件夹C:\ Program Files(x86)\ SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\Crystal Reports 2011\crystalreportviewers的内容复制到该文件夹中(源路径似乎在不同的机器上有所不同).
将其添加到web.config的配置中
<configSections>
<sectionGroup name="businessObjects">
<sectionGroup name="crystalReports">
<section name="rptBuildProvider" type="CrystalDecisions.Shared.RptBuildProviderHandler, CrystalDecisions.Shared, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304, Custom=null" />
<section name="crystalReportViewer" type="System.Configuration.NameValueSectionHandler" />
</sectionGroup>
</sectionGroup>
Run Code Online (Sandbox Code Playgroud)
然后将其添加到web.config的配置部分
<businessObjects>
<crystalReports>
<rptBuildProvider>
<add embedRptInResource="true" />
</rptBuildProvider>
<crystalReportViewer>
<add key="ResourceUri" value="/crystalreportviewers13" />
</crystalReportViewer>
</crystalReports>
</businessObjects>
Run Code Online (Sandbox Code Playgroud)
它应该工作....
我首先从http://scn.sap.com/docs/DOC-7824下载最新版本
如果仍然没有显示,请检查您的web.config是否指向正确的版本.如果您仍然遇到问题,请检查HTML声明中的doc类型 - 我记得它与HTML5无法正常工作.
编辑:
在早期版本的水晶中,我上面提到的文件夹会自动复制到c:\ inetpub\wwwroot\aspnet_client\system_web\4_0_30319 - 如果你将整个aspnet_client复制到解决问题的应用程序的根目录中 - 在更高版本的水晶中我相信如果您在安装时没有运行IIS,则无论如何都不会创建该文件夹.
| 归档时间: |
|
| 查看次数: |
19926 次 |
| 最近记录: |