列表<用户>中已存在检查或昵称

Swa*_*wag 2 c# asp.net list

我正在创建一个可以注册的ASP网站.

访问者选择注册的昵称必须是唯一的.

每当用户注册时,我从数据库中选择所有用户,然后我使用foreach循环检查或用户名已经存在:

private List<User> listExistingUsers;
listExistingUsers = Database.GetUsers();
foreach (User u in listExistingUsers)
{
    if (u.Nickname == txtNickname.text)
    {
        Error = "Username already in use.";
    }
}
Run Code Online (Sandbox Code Playgroud)

但上面的代码不能正常工作.它不会检查列表中从数据库中读取的所有项目.因此,可以让用户拥有相同的用户名,这是我不想要的.

我该怎么做才能解决这个问题?我读到了LINQ,但我认为在我看来这是用List <>检查用户名的错误方法.我认为这个用户名检查必须以另一种方式完成.

你可以帮助我吗?我也可以使用SQL查询进行此检查,但我想在c#中执行此操作.

Yur*_*ter 6

而不是从DB返回所有用户,将用户名传递给Query /存储过程,让后端进行检查,然后返回状态标志1/0 - 存在/不存在.