這是我的linq查詢,我得到了很多重複的學校名稱。 所以我創建了一個正則表達式功能修剪文字:從linq查詢c刪除重複項#
public static string MyTrimmings(string str)
{
return Regex.Replace(str, @"^\s*$\n", string.Empty, RegexOptions.Multiline).TrimEnd();
}
文本被trimed正常的,但是,在下拉值都是重複的!請幫我消除重複,哦Linq快樂!
ViewBag.schools = new[]{new SelectListItem
{
Value = "",
Text = "All"
}}.Concat(
db.Schools.Where(x => (x.name != null)).OrderBy(o => o.name).ToList().Select(s => new SelectListItem
{
Value = MyTrimmings(s.name),
Text = MyTrimmings(s.name)
}).Distinct()
);
我不知道不同的取值很好的瞭解。謝謝我現在會嘗試。 – NULL
它說不能lambda表達式比較的IEqualityComparer錯誤 – NULL
參見[morelinq的DistinctBy(https://code.google.com/p/morelinq/source/browse/MoreLinq/DistinctBy.cs?r=d4396b9ff63932be0ab07c36452a481d20f96307) –