none
report Viewer 2010 一直postback RRS feed

  • 問題

  • 小弟在vs2008時,使用下面的程式碼,為reportviewer 以程式的方式指定執表檔(設計階段不指定),可以順利完成:

        protected void Page_Load(object sender, EventArgs e)

        {

                string sReportName = "repZip.rdlc";

                rv.LocalReport.ReportPath = MapPath(sReportName);

                ds = new ObjectDataSource();

                ds.TypeName = "HealthDataSetTableAdapters.ZIPTableAdapter";

                ds.SelectMethod = "GetData";

                string sTableName = "dsZip";

                ReportDataSource rds = new ReportDataSource(sTableName, ds);

                rv.LocalReport.DataSources.Clear();

                rv.LocalReport.DataSources.Add(rds);

    }

    但使用vs2010新的ReportViewer 後,這個web page 就不停的postback

    請問要如何解決呢? 是否是因為scriptmanager所造成的呢? 小弟只是在form 上加上一個scriptmanager,並未對scriptmanager做任何處理

    2010年10月26日 下午 08:32

解答

  • 我試了一下, 好像有這種情形, 不過請將上述的程式碼放到Page_Init事件處理程序就OK了, 如下:

    protected void Page_Init(object sender, EventArgs e)

    {

                string sReportName = "repZip.rdlc";

                rv.LocalReport.ReportPath = MapPath(sReportName);

                ds = new ObjectDataSource();

                ds.TypeName = "HealthDataSetTableAdapters.ZIPTableAdapter";

                ds.SelectMethod = "GetData";

                string sTableName = "dsZip";

                ReportDataSource rds = new ReportDataSource(sTableName, ds);

                rv.LocalReport.DataSources.Clear();

                rv.LocalReport.DataSources.Add(rds);

    }

    2010年10月28日 上午 01:29

所有回覆

  • 如果不需要用到ScriptManager, 就把ScriptManager拿掉(請問您安裝的是for VS2010的AJAX Control Toolkit嗎?)
    2010年10月27日 上午 12:44
  • VS2010 的ReportViewer 需要ScriptManager,否則無法使用

    2010年10月27日 上午 06:31
  • 我試了一下, 好像有這種情形, 不過請將上述的程式碼放到Page_Init事件處理程序就OK了, 如下:

    protected void Page_Init(object sender, EventArgs e)

    {

                string sReportName = "repZip.rdlc";

                rv.LocalReport.ReportPath = MapPath(sReportName);

                ds = new ObjectDataSource();

                ds.TypeName = "HealthDataSetTableAdapters.ZIPTableAdapter";

                ds.SelectMethod = "GetData";

                string sTableName = "dsZip";

                ReportDataSource rds = new ReportDataSource(sTableName, ds);

                rv.LocalReport.DataSources.Clear();

                rv.LocalReport.DataSources.Add(rds);

    }

    2010年10月28日 上午 01:29