我有两个数据表
DataTable dt1=new DataTable();
DataTable dt2=new DataTable();
我想根据其他数据表列值更新其中一个列的值。
例如:
dt1
包含[setFamilyno] ["HouseNo"] ["Surname"]
列
dt2
包含相同的列
我想更新[setFamilyno]
的{{1}}列。
dt1 DataTable
等于dt1["HouseNo"] ["Surname"]
,则为dt1表中的所有此类匹配设置dt1 DataTable的值1。对于dt2["HouseNo"] ["Surname"]
的下一行等于dt2["HouseNo"] ["Surname"]
,然后为所有此类匹配设置dt1["HouseNo"] ["Surname"]
的值.. 答案 0 :(得分:0)
尝试使用DataRelation创建ForeignKeyConstraint。帮助将足以知道如何做到这一点。
答案 1 :(得分:0)
DataView view = new DataView(Datatble);
int viewcount = view.Count;
DataTable distinctValues = view.ToTable(true, "SurNameEnglish", "HouseNumber");
int distinctcount = distinctValues.Rows.Count;
int cnt = 1;
for (int j = 0; j < distinctcount; j++)
{
string surname = distinctValues.Rows[j]["SurNameEnglish"].ToString();
string Housenumber = distinctValues.Rows[j]["HouseNumber"].ToString();
for (int i = 0; i < viewcount; i++)
{
if (Datatble.Rows[i]["SurNameEnglish"].Equals(surname) && Datatble.Rows[i]["HouseNumber"].Equals(Housenumber))
{
Datatble.Rows[i]["Family"] = cnt;
Datatble.AcceptChanges();
}
}
cnt++;
}
}