学生情報を保存するために、DSALL と DSSome の 2 つの DataTables があるとします。
DSALL (すべての学生情報を保存)
SID (PK)
名前
住所
電話
...
DSSome (一部の特定の学生の SID のみを保存)
SID (固有)
ここで、DSSome のすべての SID が DSALL に存在するかどうかを確認する C# 関数が必要です。この関数は、すべての SID が DSALL に存在する場合は true を返し、そうでない場合は false を返します。
従来の方法は、
protected bool checkSID(DataTable DSALL, DataTable DSSome){
for (int i=0; i<DSSome.Rows.Count; i++){
bool isFound = false;
string SID = DSSome.Rows[i]["SID"].ToString();
for (int j=0; j<DSALL.Rows.Count; j++){
string _SID = DSALL.Rows[j]["SID"].ToString();
if (SID == _SID) { isFound = true; break; }
}
if (!isFound) return false;
}
return true;
}
この問題を効率的に解決する簡単な方法はありますか?