1
RDLCレポートを読み込むaspxページがあります。page_loadにRDLCをロードする
レポートをポストバックに読み込むとき(つまり、何もしないでページをポストバックしてDoReport()メソッドを呼び出すボタンを追加する)、レポートは正常に読み込まれます。しかし、私は(つまり、私がPage_Loadの中DoReportの()メソッドを入れて、ページが際限なく実行するようだ、とのPage_Loadは数百回と呼ばれ、ページの読み込みに直接レポートをロードしようとした場合
protected void Page_Load(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(Request.QueryString["ReportID"]))
{
BuildReport(Convert.ToInt32(Request.QueryString["ReportID"]));
}
}
private void BuildReport(int reportID_)
{
Database db = DatabaseFactory.CreateDatabase();
DataTable tbl = db.ExecuteDataSet(CommandType.Text, "select top 10 * from TABLE_NAME").Tables[0];
RdlcBuilder rdlcBuilder = new RdlcBuilder(reportID_); //custom class that builds the RDLC based on the report ID
XmlDocument xmlDoc = new XmlDocument();
Bind(rdlcBuilder.GetRdlcStream(xmlDoc), tbl);
}
private void Bind(Stream reportDefinitionStream_, DataTable dataSource_)
{
ReportViewer1.LocalReport.DataSources.Clear();
ReportViewer1.Width = new Unit(700);
ReportViewer1.Height = new Unit(1200);
ReportViewer1.LocalReport.EnableExternalImages = true;
ReportViewer1.LocalReport.DataSources.Add(new ReportDataSource("DataSetName", dataSource_));
ReportViewer1.LocalReport.LoadReportDefinition(reportDefinitionStream_);
}
再び - 。この私は、レポートビューアーは、非同期的に自分自身を移入したときに別のをPage_Loadは、トリガー(「ロード」記号が表示されている間)レポートにレポート定義を割り当てるコマンドボタン
あなたはここでPage_Loadのコードを置くことができますか? – DeveloperX
もDoReport()を置くと、私は問題を引き起こしていると懐疑的です –