C# 如何使用Linq作为IF条件
我在数据库中搜索了一个客户,得到了一个小linq查询:C# 如何使用Linq作为IF条件,c#,linq,if-statement,C#,Linq,If Statement,我在数据库中搜索了一个客户,得到了一个小linq查询: var query = from c in database.customer where c.ID == input select c; 每个客户都有一个ID,在这种情况下由用户“输入”设置 数据库中的所有客户均来自“德国”,但有些客户应以不同的国家值(“英格兰”而非“德国”)复制到数据库中 现在,在将它们直接添加到数据库之前,我想检查数据库中是否已经有该客户的“英语版本” if (query.Where(c =>
var query =
from c in database.customer
where c.ID == input
select c;
每个客户都有一个ID,在这种情况下由用户“输入”设置
数据库中的所有客户均来自“德国”,但有些客户应以不同的国家值(“英格兰”而非“德国”)复制到数据库中
现在,在将它们直接添加到数据库之前,我想检查数据库中是否已经有该客户的“英语版本”
if (query.Where(c => c.country == "England"))
//do nothing
else
//add the customer with c.country = "England"
问题是这不是一个常规的if语句
是否有一种可能的方式来实现我想在这个if条件下表达的内容
谢谢只需将条件更改为
if (query.Any(c => c.country.Equals("England")))
//do nothing
else
//add the customer with c.country = "England"
Linq
methodWhere
返回无法自动转换为bool
值的IEnumerable
值。
Any
或All
等方法会根据集合中至少一个元素的条件是true
还是所有元素的条件分别返回true
或false
。您是在寻找Any
而不是Where
?