web-dev-qa-db-ja.com

レポートビューアを使用してasp.netでレポートを作成する方法

Visual Studio 2010を使用しています。以前はCrystalReportingに取り組んでいましたが、レポートビューアを使用してレポートを生成したいと思います。私はこのトピックに不慣れなので、私を導いてください。ありがとう!!!

5
Sonam Mohite
9
Pranay Rana

私のコードは、ビジネスクラスオブジェクトのレポートを作成するために機能します...

ビジネスクラスオブジェクトとReportViewer(ASP.NET/ C#)を使用したレポートの作成1.学生クラスの作成

  public class StudentClass
  {
      public int No { get; set; }
      public string Name { get; set; }
      public string Degree { get; set; }
   }

2.GetStudents()関数を使用して学生リポジトリを作成します

public class StudentRepository : StudentClass
    {
        public List<StudentClass> studentList = new List<StudentClass>();

        public List<StudentClass> GetStudents()
        {            
            StudentClass student1 = new StudentClass();
            student1.No = 1;
            student1.Name = "Bhuvana";
            student1.Degree = "M.Tech";
            studentList.Add(student1);
            StudentClass student2 = new StudentClass();
            student2.No = 2;
            student2.Name = "Annie";
            student2.Degree = "B.Tech";
            studentList.Add(student2);
            StudentClass student3 = new StudentClass();
            student3.No = 3;
            student3.Name = "Muthu Abi";
            student3.Degree = "B.Tech";
            studentList.Add(student3);
            return studentList;
        }
    }

3.レポートの使用Wizard“ StudentReport.rdlc”を作成し、データソースを選択します

4. Index.aspxで、ToolBox(ドラッグアンドドロップ)からスクリプトマネージャーとレポートビューアーを追加します

<div>
    <asp:ScriptManager ID="ScriptManager1" runat="server">
    </asp:ScriptManager>  
    <rsweb:ReportViewer ID="ReportViewer1" runat="server">
    </rsweb:ReportViewer>       
</div>

5.コードビハインドファイルのPage_Load()メソッドを変更します

public partial class Index : System.Web.UI.Page
{
    StudentRepository sr = new StudentRepository();
    List<StudentClass> sc = new List<StudentClass>();
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            ReportViewer1.ProcessingMode = ProcessingMode.Local;
            ReportViewer1.LocalReport.ReportPath = Server.MapPath("~/Report/Student.rdlc");
            sc = sr.GetStudents();
            IEnumerable<StudentClass> ie;
            ie = sc.AsQueryable();
            ReportDataSource datasource = new ReportDataSource("DataSet1", ie);
            ReportViewer1.LocalReport.DataSources.Clear();
            ReportViewer1.LocalReport.DataSources.Add(datasource);
        }

    }
}

6.ビルドして実行

1
Bhuvi