首页 新闻 搜索 专区 学院

asp.net ReportViewer不显示,一片空白

0
悬赏园豆:20 [已关闭问题] 关闭于 2014-12-23 10:27

在asp.net mvc中加载aspx页面,该页面用到了ReportViewer控件,但是访问该页面,控件不显示,一片空白,Firefox和IE浏览器下均如此。用浏览器打开页面源代码,发现错误信息,如下:

根据错误提示,查看web.config文件,相关配置都存在,所以实在不明白,请高手帮忙!
C#代码如下:

 if (!IsPostBack)
            {
                if (Master != null)
                {
                    //控件注册
                    var scriptManager = Master.FindControl("ReportSM") as ScriptManager;
                    if (scriptManager != null)
                    {
                        scriptManager.RegisterAsyncPostBackControl(this.btn_submit);
                    }
                    //报表控件
                    var reportViewer = Master.FindControl("GloabalReportViewer") as ReportViewer;
                    if (reportViewer != null)
                    {
                        //reportViewer.LocalReport.ReportPath = @"F:\桌面临时文件\报表系统\ReportSystem\ReportSystem\ReportModel\AccountStatSumQuery.rdlc";
                        reportViewer.LocalReport.ReportPath = "AccountStatSumQuery.rdlc";
                        DataTable dt = new DataTable();//必须将dataset里面的字段名称转化与DataSet.xsd里面的datatable的字段一样才能够进行绑定
                        dt.Columns.Add("a");
                        dt.Columns.Add("b");
                        dt.Columns.Add("c");
                        dt.Columns.Add("d");
                        dt.Columns.Add("e");
                        dt.Columns.Add("f");
                        DataRow dr = dt.NewRow();
                        dr["a"] = DateTime.Now;
                        dr["b"] = "测试";
                        dr["c"] = "测试";
                        dr["d"] = 0;
                        dr["e"] = 0;
                        dr["f"] = 0;
                        dt.Rows.Add(dr);
                        ReportDataSource rds = new ReportDataSource("DataSet1", dt);
                        reportViewer.LocalReport.DataSources.Clear();
                        reportViewer.LocalReport.DataSources.Add(rds);
                        reportViewer.LocalReport.Refresh();
                    }

                }
            }
问题补充:

没有人回答吗

CaptainTina的主页 CaptainTina | 初学一级 | 园豆:3
提问于:2014-12-22 18:39
< >
分享
所有回答(1)
0

自己解决了

CaptainTina | 园豆:3 (初学一级) | 2014-12-23 10:26

请问您是如何解决的,我的情况跟你一样,结果不能显示报表,一片空白。

支持(0) 反对(0) Jeacathy | 园豆:200 (初学一级) | 2015-03-11 00:48

@Jeacathy: 我是把它放到Iframe中加载的:

<iframe scrolling="hidden" frameborder="0" src="~/BaseReportViewer.aspx" style="width: 100%; height: 98%;" id="reportFrame"></iframe>

支持(1) 反对(0) CaptainTina | 园豆:3 (初学一级) | 2015-03-13 11:21

@CaptainTina: 谢谢,耐心回答!

支持(0) 反对(0) Jeacathy | 园豆:200 (初学一级) | 2015-03-17 14:22

@CaptainTina: 找了好久,在这里看到了。 之前就查在.cshtml文件里怎么使用Report Viewer没有,突然在这里看到正解,感动的哭了。

分布视图来实现是不是也可以,没有尝试过。

支持(0) 反对(0) meetmj | 园豆:200 (初学一级) | 2016-11-11 13:52

@Mchn: 具体是怎么解决的呢?

支持(0) 反对(0) TomCatA | 园豆:200 (初学一级) | 2017-06-09 18:22

@CaptainTina: 具体是怎么解决的呢?我也遇到了同样的问题

支持(0) 反对(0) TomCatA | 园豆:200 (初学一级) | 2017-06-09 18:23

 你好,我也遇到同样的问题,报表在iframe里加载

然后在GetStationInsuranceTicketReport.aspx文件的page_Load方法里是这么写的

 

但是在视图里不显示报表,查看网页源代码时还报错

 

但是明明web.config文件里面已经加了的。

请问这是怎么回事?怎么解决?

支持(0) 反对(0) 闲得无聊敲代码 | 园豆:159 (初学一级) | 2017-06-15 16:26
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册