Crystalreportviewer 未呈现(asp.net mvc4 razor 语法)
Crystalreportviewer not rendering (asp.net mvc4 razor syntax)
我正在尝试在 visual studio 2012 年的 asp.net mvc4(razor 语法)中创建一个 crystal 报告。我在网上阅读了一些文章,有两种方法可以实现这具有剃刀的观点。
1:没有 crystalreportviewer 的简单 pdf 渲染
2: 创建 aspx 页面并加载 crystalreportviewer。
我将使用第二种方法创建一个 aspx 页面,在我的控制器的操作中,我有以下代码。
Controller.cs(动作)
if (this.HttpContext != null && this.HttpContext.Session != null)
{
this.HttpContext.Session["ReportName"] = "AccountStatement.rpt";
this.HttpContext.Session["rptSource"] = reportInfo;
}
// Redirecting generic report viewer page from action
Response.Redirect("~/AspForms/aspnetgeneric.aspx")
在 aspnetgeneric.aspx 页面加载的代码隐藏中,我有:
string strReportName = System.Web.HttpContext.Current.Session["ReportName"].ToString();
ReportDocument rd = new ReportDocument();
string strRptPath = Path.Combine(Server.MapPath("~/Reports"), strReportName);
rd.Load(strRptPath);
if (source.GetType().ToString() != "System.String")
rd.SetDataSource(source);
CrystalReportViewer1.ReportSource = rd;
代码在运行时运行良好,没有任何异常,但不会在浏览器中显示 crystalreportviewer 或报告本身 window。 (在所有主要浏览器上测试)。我尝试将目标框架从 4.5 更改为 4.0,但仍然相同。
我可能缺少什么?有什么线索吗?
你能检查一下你的浏览器控制台是否显示任何错误吗window。 (您可以按 F12 转到浏览器控制台 window)。
您可以尝试以下方式
将 aspnet_client 文件夹从 c:\inetpub\wwwroot 文件夹复制到新网站(您项目的)根文件夹。
我通过执行以下操作使其工作:
我在 SAP Support 上看到 'IIS Express is not supported as it does not allow for integration of 3rd party components',所以我将我的网站转移到 IIS7.5。
然后我将 crystalviewer13 文件夹和 aspnet_client 文件夹一起复制到我网站的根目录并授予完全管理员权限。
最后,我不得不在 aspnetgenric.aspx 中添加 javascript 文件 (crystalreportviewers13/js/crviewer/crv.js),它恢复了 crystalreportviewer。
我想分享这个,如果它能在将来帮助到别人。
我正在尝试在 visual studio 2012 年的 asp.net mvc4(razor 语法)中创建一个 crystal 报告。我在网上阅读了一些文章,有两种方法可以实现这具有剃刀的观点。
1:没有 crystalreportviewer 的简单 pdf 渲染 2: 创建 aspx 页面并加载 crystalreportviewer。
我将使用第二种方法创建一个 aspx 页面,在我的控制器的操作中,我有以下代码。
Controller.cs(动作)
if (this.HttpContext != null && this.HttpContext.Session != null)
{
this.HttpContext.Session["ReportName"] = "AccountStatement.rpt";
this.HttpContext.Session["rptSource"] = reportInfo;
}
// Redirecting generic report viewer page from action
Response.Redirect("~/AspForms/aspnetgeneric.aspx")
在 aspnetgeneric.aspx 页面加载的代码隐藏中,我有:
string strReportName = System.Web.HttpContext.Current.Session["ReportName"].ToString();
ReportDocument rd = new ReportDocument();
string strRptPath = Path.Combine(Server.MapPath("~/Reports"), strReportName);
rd.Load(strRptPath);
if (source.GetType().ToString() != "System.String")
rd.SetDataSource(source);
CrystalReportViewer1.ReportSource = rd;
代码在运行时运行良好,没有任何异常,但不会在浏览器中显示 crystalreportviewer 或报告本身 window。 (在所有主要浏览器上测试)。我尝试将目标框架从 4.5 更改为 4.0,但仍然相同。 我可能缺少什么?有什么线索吗?
你能检查一下你的浏览器控制台是否显示任何错误吗window。 (您可以按 F12 转到浏览器控制台 window)。
您可以尝试以下方式
将 aspnet_client 文件夹从 c:\inetpub\wwwroot 文件夹复制到新网站(您项目的)根文件夹。
我通过执行以下操作使其工作:
我在 SAP Support 上看到 'IIS Express is not supported as it does not allow for integration of 3rd party components',所以我将我的网站转移到 IIS7.5。
然后我将 crystalviewer13 文件夹和 aspnet_client 文件夹一起复制到我网站的根目录并授予完全管理员权限。
最后,我不得不在 aspnetgenric.aspx 中添加 javascript 文件 (crystalreportviewers13/js/crviewer/crv.js),它恢复了 crystalreportviewer。
我想分享这个,如果它能在将来帮助到别人。