我有一個列表和一個DataTable,它包含一個與列表中的ID相匹配的列。我需要識別列表中不在DataTable中的所有ID。我嘗試了一個IEnumberable DataRow並將它加入到列表中,但我無法找到丟失的列表。在DataTable中查找缺少ID的列表<int>
這裏是我的代碼和我已經試過......
List<int> JobIdList = (from i in EntryItems select i.JobID.Value).ToList<int>();
IEnumerable<DataRow> rowInfo = JobBLL.JobsExist(JobIdList).AsEnumerable();
var MissingList = (from rec in rowInfo
join id in JobIdList
on rec.Field<int>("JobID") equals id
into grouping
from id in grouping.DefaultIfEmpty()
select new { id }).ToList();
if (MissingList.Count > 0) { // Show message and exit }
的問題是,它返回被發現在數據表中的項目。假設我在列表中有1,2和3,但我的數據表只有1和3.我想在MissingList中有2個。
有什麼想法?
哈希集只比List的Except方法稍高一點。 – Aron
謝謝!小修正,但'從行中的X行'應該是'從行中的X'。雖然工作很棒! –
@RyanBrooks修復 – Aron