我有一个IList<User>
包含具有一对值的对象:Name
和Surname
。在数据库上,我有一个表,其中包含带有姓名和姓氏字段的行。我想在代码隐藏上返回与我的列表匹配的行列表,所以假设姓名和姓氏(分别)相等。
我的实际代码是:
utenti = (from User utente in db.User.AsEnumerable()
join amico in amiciParsed
on new { utente.Nome, utente.Cognome } equals
new { Nome = amico.first_name, Cognome = amico.last_name }
select utente).OrderBy(p => p.Nome)
.OrderBy(p => p.Cognome)
.OrderBy(p => p.Nickname)
.ToList();
但这并不好,原因有两个:
- 它将在客户端下载数据库的全部记录;
- 我无法将姓名和姓氏匹配为区分大小写(例如 Marco cordi != Marco Cordi);在 DB 上,我有各种上/下字符。
正如之前的问题所建议的那样,这个答案似乎对我没有帮助,因为我必须加入(也因为第一个问题它不相关)。
解决这个问题的方法是什么?