0

エンティティ フレームワークで動作する Visual Studio 2013 Web アプリケーションがあり、RDLC レポートを使用して単純な表形式のデータ レポートを表示したいと考えています。

別の Web ページを作成し、reportviewer コントロールを追加しました。Listまた、RDLC ファイルを作成し、カスタム オブジェクトを返す C# 関数からデータ ソースを追加しました。このように、レポート デザイナーから構成できますが、ページがブラウザーに読み込まれるとエラーA data source instance has not been supplied for the data source 'DataSet1'が表示されます。

レポートのデザイン ここに画像の説明を入力

HTML マークアップ

    <rsweb:ReportViewer ID="ReportViewer1" runat="server" Font-Names="Verdana" Font-Size="8pt"
        WaitMessageFont-Names="Verdana" WaitMessageFont-Size="14pt">
        <LocalReport ReportPath="Alumni\Reports\Report1.rdlc"></LocalReport>
    </rsweb:ReportViewer>

上記の実装では、データ ソースが指定されていないというエラーが発生しましたが、Yuliam Chandraが提案したように、以下のコードを追加したところ、レポートが機能するようになりました。

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            ReportViewer1.LocalReport.DataSources.Add(new ReportDataSource("DataSet1", Business.ReportManager.GetMemberDetails(1)));
        }
    }

この問題を解決するために私を助けてください。RDLC を使用して単純なレポートを表示する必要があるだけで、データ ソースは、オブジェクトのリストを返す引数を持つ public static 関数です。

4

1 に答える 1