sourceTablecolumn とで呼び出される Datatable がsource_Idありtitleますprogramme_Id。2 番目の Datatable にはcredits列credit_Id,がありますprogramme_Id。すべての列は、列のタイトルではなく Int 型です。
programme_Idデータテーブルの列creditsは外部キー FROM データテーブルですsourceTable
私が達成したいのは、 DatatablesourceTableの Column でテーブルを超えることです。credit_Idcredits
私は動作するコードを書きましたが、非常に遅いですが、もっと良い方法があります!、探しているアイテムがない場合、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;
}