[英]Crystal report not showing any data
我是C#和ASP .NET編程的新手。 我正在.net制作水晶報道。 我設置了Dataset
和DataTable
。 對於報告來源。
我從linq查詢中獲取數據。 然后我在Dataset
的實例中填充它們。 我使用調試器,它顯示我有來自查詢的數據。 但我的水晶報告只顯示列標題而不是列數據。
這是我的代碼:
private void ViewReport()
{
DataSet1 Dataset = new DataSet1();
DataTable rptTable = Dataset.Tables["Emp_info"];
DataTable rptTab = Dataset.Tables["Attendance_table"];
Ind_attendance_rpt rptAtd = new Ind_attendance_rpt();
DataRow dataRow1; // declaring Row of dataset
DataRow dataRow2;
//IndividualAttendance rptAtt = new IndividualAttendance();
var rport = from att in db.Attendance_tables
join emp in db.Emp_infos on att.Login_id equals emp.ID
orderby att.Id
select new
{
att.Id,
emp.Emp_name,
emp.ID,
emp.Designation,
emp.Dept,
att.Entry_time,
att.Exit_time,
att.Status,
att.Date
};
Dataset.Tables["Emp_info"].Clear();
Dataset.Tables["Attendance_table"].Clear();
foreach (var rt in rport)
{
dataRow1 = rptTable.NewRow();
dataRow2 = rptTab.NewRow();
dataRow2["Id"] = rt.Id;
dataRow1["Emp_name"] = rt.Emp_name;
dataRow1["Designation"] = rt.Designation;
dataRow1["Dept"] = rt.Dept;
dataRow2["Entry_time"] = rt.Entry_time;
dataRow2["Exit_time"] = rt.Exit_time;
dataRow2["Status"] = rt.Status;
dataRow2["Date"] = rt.Date;
dataRow2["Login_id"] = rt.ID;
Dataset.Tables["Emp_info"].Rows.Add(dataRow1);
Dataset.Tables["Attendance_table"].Rows.Add(dataRow2);
}
rptAtd.SetDataSource(Dataset);
CrystalReportViewer1.ReportSource = rptAtd;
}
誰能告訴我原因?
這是我現在得到的結果:
調試圖像:
設置ReportSource后,嘗試在報表上調用Refresh
CrystalReportViewer1.Refresh();
您可能還必須在linq上使用ToList();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.