为什么我的 CrystalReportViewer 不显示结果?

Why doesn't my CrystalReportViewer display Results?

我正在尝试在 ASP.netC# 中开发一个简单的 crystal 报告。我正在使用 CrystalReportViewer 加载我的报告。 这是 C# 代码:

protected void Page_Load(object sender, EventArgs e)
{
    SqlConnection con;
    string connString = null;
    connString = "Data Source=.;initial catalog=InvoiceSystem;user id=sa;password=rfm";
    con = new SqlConnection(connString);
    con.Open();

    string query = null;
    query = "Select * from tblInvoice";
    SqlDataAdapter da = new SqlDataAdapter(query, con);
    con.Close();
    DataSetInv ds = new DataSetInv();
    da.Fill(ds, "tblInvoice");
    ReportDocument rpt = new ReportDocument();
    rpt.Load(Server.MapPath("~/CrystalReportInv.rpt"));
    rpt.SetDataSource(ds);
    CrystalReportViewer1.ReportSource = rpt;
}

我的问题,CrystalReportViewer 没有 render 我在浏览器上的报告,它是 blank page。虽然没有错误,但有什么问题吗?

以下是解决问题的步骤

  1. 下载和安装 Crystal 的运行时 Reports 13 for Visual Studio 2010。(如果您之前已经执行过此操作并且您的应用程序在本地运行,则可能要跳过此步骤).

  2. 安装运行时后。 Crystal Reports 将在您本地计算机的位置安装所需的支持文件: C:\inetpub\wwwroot\aspnet_client\system_web_0_30319\crystalreportviewers13

  3. 复制整个 Crystal Report Support 文件夹 C:\inetpub\wwwroot\aspnet_client\system_web_0_30319\crystalreportviewers13 到您网站的 SITE_ROOT\aspnet_client\system_web_0_30319 文件夹。

4) 如果您的网站根目录中没有 \aspnet_client\system_web_0_30319 文件夹。请手动创建它们,然后将crystalreportviewers13复制到其中。

参考这个Crystal Report is unable to find the required JavaScript (JS) files to render the report in browser

除了上面圣普拉迪普描述的步骤

在您的 Web.Config 文件中添加以下内容(.Net 4.0 及更高版本)

<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>
</configSections>

<businessObjects>
  <crystalReports>
    <rptBuildProvider>
      <add embedRptInResource="true" />
    </rptBuildProvider>
    <crystalReportViewer>
      <add key="ResourceUri" value="/crystalreportviewers13" />
    </crystalReportViewer>
  </crystalReports>
</businessObjects>