합계구한 컬럼을 DataTable에 추가하기
public System.Data.DataTable GetTable(System.Data.SqlClient.SqlDataReader _reader)
{
System.Data.DataTable _table = _reader.GetSchemaTable();
System.Data.DataTable _dt = new System.Data.DataTable();
System.Data.DataColumn _dc;
System.Data.DataRow _row;
System.Collections.ArrayList _al = new System.Collections.ArrayList();
for (int i = 0; i < _table.Rows.Count; i ++)
{
_dc = new System.Data.DataColumn();
if (! _dt.Columns.Contains(_table.Rows[i]["ColumnName"].ToString()))
{
_dc.ColumnName = _table.Rows[i]["ColumnName"].ToString();
_dc.Unique = Convert.ToBoolean(_table.Rows[i]["IsUnique"]);
_dc.AllowDBNull = Convert.ToBoolean(_table.Rows[i]["AllowDBNull"]);
_dc.ReadOnly = Convert.ToBoolean(_table.Rows[i]["IsReadOnly"]);
_al.Add(_dc.ColumnName);
_dt.Columns.Add(_dc);
}
}
_dc = new System.Data.DataColumn();
_dc.ColumnName = "합계";
_dc.DataType = Type.GetType("System.String");
_dt.Columns.Add(_dc);
while (_reader.Read())
{
_row = _dt.NewRow();
int i = 0;
int sum = 0;
for ( i = 0; i < _al.Count; i++)
{
_row[((System.String) _al[i])] = _reader[(System.String) _al[i]];
string tmpSum = _reader[(System.String) _al[i]].ToString();
if (i > 2)
{
sum += int.Parse(tmpSum);
}
}
_row["합계"] = sum.ToString();
_dt.Rows.Add(_row);
}
return _dt;
}
[출처] [본문스크랩] 합계구한 컬럼을 DataTable에 추가하기|작성자 관절분리