我试图在if语句中检查SQL表中是否存在记录,我试图使用.Count()但现在明白它不会起作用,因为它会返回所有的总量表中的记录。
// If the current user does not exist in the Database, then add the user
if (staffdb.Staffs.Single(s => s.Staffname == user).Count() == 0)
{
}
关于这一点,我有点新手,但我已经做了一些网络搜索,似乎无法找到任何东西。
答案 0 :(得分:2)
正确的解决方案是:
if (!staffdb.Staffs.Any(s => s.Staffname == user))
{
// ...
}
这可确保数据库在找到数据库后停止查找。如果您使用.Where()
后跟.Count()
,它可能会遍历整个表并检索比所需更长的列表。
答案 1 :(得分:0)
// If the current user does not exist in the Database, then add the user
if (staffdb.Staffs.SingleOrDefault(s => s.Staffname == user) == null)
{
}