【发布时间】:2015-07-02 15:58:09
【问题描述】:
我正在从 sql server 数据库和数据库中获取数据,我有列 selectedId。如果 checkbox1 为 true,则将 selectedId 分配为 1。如果 checkbox2 为 true,则将 selectedId 分配为 2。
所以表中有两列。 employeeId 和 SlectedId。
这是我的表在 SQL 中的样子:
表:
EmployeeId SelectedId
1234 1
1234 2
1111 1
2222 2
等等..
所以,这背后的想法是,我有一个网格,用户选中复选框,它以我提到的 SQL 填充表的方式保存在数据库中。 保存数据后,我想查看保存的更改。 我查询我的数据库并将结果存储在数据表中。然后我使用'foreach'遍历每一行并创建一个多列自定义列表,如下所示:
List<ResultClass> res = new List<ResultClass>();
foreach (DataRow row in dt.Rows)
{
ResultClass result = new ResultClass ();
result.employeeId = row["emplid"].ToString().Trim();
if (row["selectedId"] != DBNull.Value)
{
if (Convert.ToInt16(row["selectedId"]) == 1)
result.isCheckbox1 = true;
if (Convert.ToInt16(row["selectedId"]) == 2)
result.isCheckbox2 = true;
}
else
{
result.isCheckbox1 = false;
result.isCheckbox2 = false;
}
res.Add(result); //res is my list
}
return res;
所以,现在我在内存中有一个如下列表:
employeeId checkbox1 Checkbox2
1234 true false
1234 false true
现在我想合并这些行,以便在 gridview 中为 employeeId 1234 显示两个单独的行,而不是显示如下:
employeeId checkbox1 checkbox2
1234 true true
【问题讨论】:
标签: c# list multiple-columns