4

クエリへの入力として日付を送信するため、手動でデータセットに値を入力して rdlc レポートを生成したいと考えています。私はそれを行うために次のコードを使用します

//my list get populated with the relevant records according to its date and I'm using the tableadapter of my dataset to do that

List<DailySalesEntity> list = DailySalesHandler.GetSalesByDate(dateTimePicker1.Value);
            reportViewer1.LocalReport.DataSources.Clear();
            Microsoft.Reporting.WinForms.ReportDataSource report = new Microsoft.Reporting.WinForms.ReportDataSource("DataSet_Dailysales", list);
            reportViewer1.LocalReport.DataSources.Add(report);
            reportViewer1.LocalReport.Refresh();

. データセットを使用してデータを表示するために Tablix を使用しています。レポート ビューアーに正しいレポートを設定しました。例外はありません。しかし、レポートは読み込み続け、レポートは表示されません。私は間違っているのは何ですか。

パラメーターをクエリに渡してデータセットを設定し、結果のデータセットをレポートで使用するにはどうすればよいですか?

4

1 に答える 1

11

私はちょうどこの問題を抱えてそれを解決しました。ローディングサインは表示され続け、消えることはありませんでした。私の場合、問題は私がIsPostBack値を処理していなかったことでした。はLocalReport.Refresh()ポストバックを生成し、処理されない場合は、投稿と投稿を続行します。

これが私の問題でした。リフレッシュを壁にかけることで、ページはポストバックを続けました

protected void Page_Load(object sender, EventArgs e)
{
    // Report data source code...
    myReport.LocalReport.Refresh();
}

解決:

protected void Page_Load(object sender, EventArgs e)
{
    if(!IsPostBack)
    {
        // Report data source code...
        myReport.LocalReport.Refresh();
    }
}

したがって、PostBackを処理していて、無限ループが発生していないことを確認してください。

于 2012-08-02T15:56:38.483 に答える