Asp.net 为什么reportviewer渲染要花这么长时间

Asp.net 为什么reportviewer渲染要花这么长时间,asp.net,Asp.net,和往常一样,我使用的是ReportViewer,这是我第一次用这么长时间来渲染 这里的任何人都能告诉我可能是什么吗? 下面的代码显示了我是如何输入我的reportviewer ReportParameter param = new ReportParameter("USR", usr); ReportViewer1.LocalReport.SetParameters(param); ReportViewer1.LocalReport.ReportPath = "MyRep

和往常一样,我使用的是
ReportViewer
,这是我第一次用
这么长时间来渲染
这里的任何人都能告诉我可能是什么吗?
下面的代码显示了我是如何输入我的
reportviewer

    ReportParameter param = new ReportParameter("USR", usr);
    ReportViewer1.LocalReport.SetParameters(param);
    ReportViewer1.LocalReport.ReportPath = "MyReport.rdlc";
    DataSet ds = _rel.FeedDS(rel);
    ReportDataSource rds = new ReportDataSource("my_ds", ds.Tables[0]);
    ReportViewer1.LocalReport.DataSources.Clear();
    ReportViewer1.LocalReport.DataSources.Add(rds);
    ReportViewer1.DataBind();
    ReportViewer1.LocalReport.Refresh();
    paineel.Visible = true;
    ReportViewer1.Width = 640;  



    public DataSet FeedDS(Reports rel)
      {
         rel.Dt_Inicial += " 00:00:00";
         rel.Dt_Final += " 23:59:59";
         DataSet retorno = new DataSet();
         string sql = @"SELECT proj.descricao AS projeto, func.descricao AS funcionalidade, clb.clube AS cliente, ch.descricao
          FROM mytable ch 
          INNER JOIN projetos proj ON ch.projeto = proj.id 
          INNER JOIN funcionalidades func ON ch.funcionalidade = func.id 
          INNER JOIN clubes clb ON ch.clube = clb.id
          WHERE ch.dt_cadastro BETWEEN @dt_inicial AND @dt_final";
          MySqlCommand cmd = new MySqlCommand();
          cmd.CommandType = CommandType.Text;           
             try
                {
                    cmd.CommandText = sql;
                    cmd.Parameters.Add(new MySqlParameter("@dt_inicial", MySqlDbType.DateTime)).Value = rel.Dt_Inicial;
                    cmd.Parameters.Add(new MySqlParameter("@dt_final", MySqlDbType.DateTime)).Value = rel.Dt_Final;


                    retorno = _dal.Consultar(cmd);
                 }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
            return retorno;
        }

Obs:在我输入
数据集
之前,在
FeedDS
方法中,我有7个
IFs/Elses
条件,我不知道这是否是问题所在…

因为报表查看器很烂!现在,说真的。。你的查询要花多少时间?@Gonzalo。-有一次我尝试了
CrystalReport
,但没有成功,我想这不是免费的。。。好的,它需要花费10秒+
才能得到12行
4列的结果,
…只有查询需要10秒?完整的渲染需要多少时间?@Gonzalo.“'ReportViewer'只需
10秒
即可显示,但显示结果还需要几秒钟。它在
加载…
屏幕上停留了几秒钟。