我有一個LINQ到對象的查詢返回的列表:如何在LINQ中查詢重名名稱中的ID-Name對?
class EmpMasterIDocBuffer
{
public int Index { get; set; }
public Int64 AutoId { get; set; }
public string Buffer { get; set; }
}
它被正確排序,以便複製緩衝器中值將在網格中很容易看到,但我該如何查詢呢?當緩衝區重複時,AutoId也將被複制,例如
1 - 弗雷德
2 - 瑪麗
2 - 瑪麗
3 - 簡
4 - 比爾
但指數將永遠是獨一無二的。
我已經刪除了Index
,因爲這只是一個想法,但這是我的實際代碼,它返回零項,而我知道至少有三個相同的類。
var docs = ctx.Database.SqlQuery<SapIdocEmployeeNumber>("select AutoId, IDoc.query('data(ZHREMPMASTER/IDOC/ZHRSA_EMPMASTER01000/BUFFER)') AS Buffer from SAPIDocs").Where(i => !string.IsNullOrWhiteSpace(i.EmployeeNumber)).ToList();
var lastDup = docs
//.Where(i => i.AutoId == 42)
.GroupBy(i => i.EmployeeNumber)
.Where(g => g.Count() > 1)
.Select(g => g.Last());
粘貼這給了我一個線索!我只能檢查前八個字符中的重複項。
你可以使用'獨特' – Satpal
獨特將刪除重複。我想識別它們。 – ProfK