如何将值添加到现有行中的新数据表列中
本文关键字:数据表 添加 | 更新日期: 2023-09-27 18:20:13
这是我的问题。我正在尝试使用我的数据表的"全名"字段,并将名称拆分为first和last,然后将这些名称添加回数据表中的正确位置。到目前为止,这就是我所拥有的。
DataTable DBTable = LoadMailingListContent(Location);
List<string> fullNames = DBTable.Rows.OfType<DataRow>().Select(dr => dr.Field<string>(columnName)).ToList();
DBTable.Columns.Remove(columnName);
DBTable.Columns.Add("First Name");
DBTable.Columns.Add("Last Name");
foreach (string fullname in fullNames)
{
var names = fullname.Split(' ');
string firstName = names[0];
string lastName = names[1];
//here is where I want to add the new name values into their new fields
}
我可以在foreach循环中设置一个计数器,并根据行的索引将名称添加回来吗?我需要关于如何将新的名字和姓氏值添加回我的新字段的帮助。
感谢
尝试
DataTable DBTable = LoadMailingListContent(Location);
DataColumn dc = new DataColumn("FirstName");
DBTable.Columns.Add(dc);
dc = new DataColumn("LastName");
DBTable.Columns.Add(dc);
foreach (DataRow d in DBTable.Rows)
{
var names = d["fullname"].ToString().Split(' ');
d["FirstName"] = names[0];
d["LastName"] = names[1];
}
下面是将列及其值添加到现有数据表的简单示例。
string status = "ABC";
DataColumn dc = new DataColumn("Status");
dt.Columns.Add(dc);
foreach (DataRow dr in dt.Rows)
{
dr["status"]= status;
}
return dt;
生成的数据表将看起来像
ExistingColumn |状态
现有值|ABC
for (int iter = 0; iter < fullNames.Count; iter++)
{
var names = fullNames[iter].Split(' ');
string firstName = names[0];
string lastName = names[1];
DBTable.Rows[iter]["First Name"] = firstName;
DBTable.Rows[iter]["Last Name"] = lastName;
}
DBTable["First Name"] = firstName;
DBTable["Last Name"] = lastName;