我有2个数据表。
一个是主人,另一个是细节
当有人去删除主记录时,如何检查我的详细数据表中没有与主表的ID相关的行。
更新:用户可以一次选择多个主记录
如果可能,我想使用LINQ。
我开始关注DataTable.Rows.Cast()......
答案 0 :(得分:3)
你不需要LINQ。
相反,您可以查看masterRow.GetChildRows("RelationName").Length
。
编辑:您应该使用DataRelation。
如果你真的不想,可以查看
childTable.AsEnumerable().Any(dr => dr["ParentIdColumn"] == someValue)
编辑:检查多个父母:
var parentKeys = parentRows.Select(dr => dr["id"]).ToList();
if (childTable.AsEnumerable().Any(dr => parentKeys.Contains(["ParentIdColumn"])))