Lambda表达式 - 读取数据库

时间:2016-10-01 06:22:50

标签: c# asp.net-mvc lambda

我想允许用户编辑他们的UserName(必须是唯一的)和一些其他数据。但是,使用表达式,如果您选择不编辑用户名,那么它不会让您更改任何内容,因为您当前的userName已经在数据库中。

  if (db.Users.Any(u => u.UserName == user.UserName)) {
     //doing stuff
      return View();
    }

而不是

"if there is ANY of input.UserName in database"

我想表达

"if there is ANY input.UserName(but except input.UserName that belongs to input.Id itself) in database"

1 个答案:

答案 0 :(得分:1)

  

如果在数据库中有任何input.UserName(但属于input.Id本身的input.UserName除外)

只是

b.Users.Any(u => u.UserName == user.UserName && u.Id != user.Id)