sourceTable
column とで呼び出される Datatable がsource_Id
ありtitle
ますprogramme_Id
。2 番目の Datatable にはcredits
列credit_Id
,がありますprogramme_Id
。すべての列は、列のタイトルではなく Int 型です。
programme_Id
データテーブルの列credits
は外部キー FROM データテーブルですsourceTable
私が達成したいのは、 DatatablesourceTable
の Column でテーブルを超えることです。credit_Id
credits
私は動作するコードを書きましたが、非常に遅いですが、もっと良い方法があります!、探しているアイテムがない場合、FirstOrDefault は 0 を設定します。その場合は 0 ではなく null 値を返す方がよいでしょう。
sourceTable.columns.Add("credits_Id");
var rowColl = credits.AsEnumerable();
foreach (DataRow row in sourceTable.Rows)
{
var credits_Id =
(from r in rowColl
where r.Field<int>("programme_Id") == Convert.ToInt32(row["programme_Id"].ToString())
select r.Field<int>("credits_Id")).FirstOrDefault<int>();
row["credits_Id"] = credits_Id;
}