0

我的朋友们使用 Visual Studio 2008,我用 C# 开发小项目,现在我想在其中添加报告(.rdlc 报告)。这是我的代码

 try
        {
            reportViewer1.Reset();
            con.Open();
            command.Connection = con;
            command.CommandType = CommandType.StoredProcedure;
            command.CommandText = "select_book_specific";

            param = new SqlParameter("@isbn", "isbn1");
            param.Direction = ParameterDirection.Input;
            param.DbType = DbType.String;
            command.Parameters.Add(param);

            adapter = new SqlDataAdapter(command);
            adapter.Fill(ds);


         //  for (int i = 0; i <= ds.Tables[0].Columns.Count - 1; i++)
           // {

             //   MessageBox.Show(ds.Tables[0].Rows[0][i].ToString());

            //} For testing purpose

            this.reportViewer1.LocalReport.ReportPath = @"C:\Documents and Settings\Administrator\My Documents\Visual Studio 2008\Projects\WindowsFormsApplication1\WindowsFormsApplication1\Report1.rdlc";


this.reportViewer1.LocalReport.DataSources.Add(newReportDataSource("Books",ds.Tables[0].TableName.ToString()));
this.reportViewer1.RefreshReport();


}
catch(exception ex){messageBox.show(ex.message);}
4

1 回答 1

0

尝试

try
{
    reportViewer1.Reset();
    con.Open();
    command.Connection = con;
    command.CommandType = CommandType.StoredProcedure;
    command.CommandText = "select_book_specific";

    param = new SqlParameter("@isbn", "isbn1");
    param.Direction = ParameterDirection.Input;
    param.DbType = DbType.String;
    command.Parameters.Add(param);

    adapter = new SqlDataAdapter(command);
    adapter.Fill(ds);
    this.reportViewer1.LocalReport.ReportPath = @"C:\Documents and Settings\Administrator\My Documents\Visual Studio 2008\Projects\WindowsFormsApplication1\WindowsFormsApplication1\Report1.rdlc";
    this.reportViewer1.LocalReport.DataSources.Clear();
    this.reportViewer1.LocalReport.DataSources.Add( new ReportDataSource(ds.DataSetName + "_" + ds.TableName, ds.Tables[0]));
    this.reportViewer1.LocalReport.Refresh();
}catch(Exception ex)
{
    messageBox.show(ex.message);
}
于 2013-04-09T03:14:28.180 回答