+----+------+------+-----+
| ID | Name | Pass | Age |
+----+------+------+-----+
| 1 | Alex | .... | 12 |
+----+------+------+-----+
我有一张上面的桌子
如何使用Age
通过Name
获得LinQ lambda
并将结果存储在变量中
喜欢这个:
var test= db.Users.Where(x => x.Name == ...).FirstOrDefault();
答案 0 :(得分:1)
关注应该对您有用
var age = db.Users.Any(x => x.Name == someName)?db.Users.First(x => x.Name == someName).Age:0;
如果找不到记录,以上代码将确保默认值为0。
如果找不到记录,您也可以引发一个自定义异常。例如,
var age = db.Users.Any(x => x.Name == someName)?db.Users.First(x => x.Name == someName).Age:throw new Exception("User not found");
如果要减少往返行程,可以这样做
var age = users.FirstOrDefault(x => x.Name == "someName")?.Age??throw new Exception("User not found");