使用linq检查数据库中是否已存在用户名

时间:2013-10-19 07:10:48

标签: c# linq

检查用户名是否已存在于数据库中的linq查询是什么? 说我的表名是“DeskOperators” 我的列名为“用户名”

5 个答案:

答案 0 :(得分:5)

您可以使用Enumerable.Any。如果记录中有任何您正在寻找的用户名,它将返回true。

DeskOperators.Any(r=>r.Username == userName)

您可以使用Enumerable.SingleEnumerable.SingleOrDefault来确保只有一条记录符合条件。

答案 1 :(得分:1)

   var result = (from row in DeskOperators 
                          where row.Username== txtUsername.Text.ToString()
                          select row).ToList();

if (result.Count() != 0)
            {
                lblmsg1.Visible = true;
                lblmsg.Text = "User Name is Already Exist";

            }
            else
            {
               //your code.

            }

试试这个。

答案 2 :(得分:0)

这将选择匹配的第一个用户名,但如果没有找到则不会抛出异常(您最终会得到一个空白集)。

var i = (from c in DeskOperators 
   where c.Username == CodeHugger 
   select c.CustomerID).FirstOrDefault(); 

答案 3 :(得分:0)

像这样

 if (!dbcontex.table.Any(s => s.column == value))

答案 4 :(得分:0)

我已经编写了以下代码来注册用户。我正在检查用户名是否已存在。我尝试了以下内容,它对我有用:

var checkexistance = (from reg in db.RegisterOperatorTables  where reg.OperatorName == operatorModel.OperatorName select reg);
            if (checkexistance.Count()>0)
            {
                return false;
            }
            else
            {
                table.OperatorName = operatorModel.OperatorName;
                table.OperatorPassword = operatorModel.Password;
                db.RegisterOperatorTables.InsertOnSubmit(table);
                db.SubmitChanges();

                return true;
            }