[英]Comparing Database values with an input value?
I'm attempting to create a register page for users to use. 我正在尝试创建一个注册页面供用户使用。 However, this allows users to have the same Username, in which I don't want to happen.
但是,这允许用户拥有相同的用户名,而我不想在其中发生这种情况。 I've wrote a piece of code, which I assumed would work but failed miserably.
我写了一段代码,我以为可以用,但是失败了。
Managers manager = new Managers();
//Compares to database to find any duplicate usernames
if (manager.Username == txtUsername.Text)
{
lblUsername.Text = "Please enter a different username!";
lblUsername.Visible = true;
}
Only gave the relevant part. 只给出了相关部分。
I was wondering if someone could explain to me what I have done wrong about this? 我想知道是否有人可以向我解释我对此做错了什么?
Managers
is my database. Managers
是我的数据库。
Edit- I added in a foreach loop, however was still accepted values. 编辑-我在foreach循环中添加了,但是仍然是可接受的值。
List<Managers> manage = new List<Managers>();
Managers manager = new Managers();
foreach (Managers m in manage)
{
if (manager.Username == txtUsername.Text)
{
lblUsername.Text = "Please enter a different username!";
lblUsername.Visible = true;
}
}
http://i.imgur.com/5DF4Mj6.png Showing the Error when program is ran http://i.imgur.com/5DF4Mj6.png运行程序时显示错误
Do something like : 做类似的事情:
var query = (from c in db.Users where c.UserName== userName select c);
if (query.Count() > 0)
{
// Message : user is exist
}
else
{
// register user
}
Edit : 编辑:
Use lambda expressions 使用lambda表达式
if (Manager.Users.Select(d => d).Where(d => d.UserName == UserName).ToList().Count() > 0)
{
// the Item is Exist in the list
}
else
{
Manager.Users.Add(new Users { UserName = Username, Pass= Password});
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.