0
var pairs = new [] { new { id = 1, name = "ram", dept = "IT", sal = "3000" }, new { id = 2, name = "ramesh", dept = "IT", sal = "5000" }, new { id = 3, name = "rahesh", dept = "NONIT", sal = "2000" },
new { id = 5, name = "rash", dept = "NONIT", sal = "7000" } };
var query = from stud in pairs
where (stud.name.StartsWith("r") && stud.id % 2 != 0)
//orderby stud.sal descending
group stud by stud.dept into grps
select new { Values = grps, Key = grps.Key, maxsal=grps.Max() };
////select new { id = stud.id };
foreach (dynamic result in query)
{
Console.WriteLine(result.Key);
Console.WriteLine(result.maxsal);
foreach (dynamic result2 in result.Values)
{
Console.WriteLine(result2.id + "," + result2.sal);
}
}
Console.Read();
我得到錯誤「至少有一個對象必須實現IComparable。」,有人可以解釋我爲什麼iam我得到這個錯誤?至少有一個對象必須在linq查詢中實現IComparable錯誤
感謝您的修正,但一旦我用你給的LAMDA表達式替換我沒有錯誤,那麼,是tyepe IComparable的點那麼呢?我想知道與SQL排序相比,linq排序的Icomparable背後的故事,你能幫助我理解它嗎? – Shekar