我需要做出哪些改变,以减少使用更少行和更好的方法完成此任务。
DataTable dtStatusMsgs;
var statusList = (
from items in dtInputTable.AsEnumerable()
where items.Field<int>("DepartmentId") == deptId
select new
{
statusId = items.Field<int>("StatusId"),
status = items.Field<string>("Status"),
statusOrder = items.Field<int>("StatusSortOrder"),
rowId = items.Field<int>("RowId")
}).Distinct();
dtStatusMsgs = new DataTable();
dtStatusMsgs.Columns.Add("StatusId", typeof(int));
dtStatusMsgs.Columns.Add("Status", typeof(string));
dtStatusMsgs.Columns.Add("StatusSortOrder", typeof(int));
dtStatusMsgs.Columns.Add("RowId", typeof(int));
foreach (var item in statusList)
dtStatusMsgs.Rows.Add(item.statusId, item.status,item.statusOrder
, item.rowId);
我希望这样做。
DataTable dtStatusMsgs;
var statusList = (
from items in dtInputTable.AsEnumerable()
where items.Field<int>("DepartmentId") == deptId
select new
{
statusId = items.Field<int>("StatusId"),
status = items.Field<string>("Status"),
statusOrder = items.Field<int>("StatusSortOrder"),
rowId = items.Field<int>("RowId")
}).Distinct();
dtStatusMsgs= statusList.CopyToDataTable<DataRow>();
如何在此代码中的任何列上使用Sum函数。 我希望看到一个示例代码,用于应用任何聚合函数
答案 0 :(得分:1)
dtStatusMsgs = new DataTable();
dtStatusMsgs.Columns.Add("StatusId", typeof(int));
dtStatusMsgs.Columns.Add("Status", typeof(string));
dtStatusMsgs.Columns.Add("StatusSortOrder", typeof(int));
dtStatusMsgs.Columns.Add("RowId", typeof(int));
statusList.ForEach(p => dtStatusMsgs.Rows.Add(p.StatusId, p.Status, p.StatusSortOrder,p.RowId));