Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用实体框架检索特定记录_C#_Asp.net_Entity Framework 4 - Fatal编程技术网

C# 如何使用实体框架检索特定记录

C# 如何使用实体框架检索特定记录,c#,asp.net,entity-framework-4,C#,Asp.net,Entity Framework 4,我有一个表users,它存储三个值,即用户名、密码和成员类型。我希望确保表中存储的用户名是唯一的,因此表中有一个主键。但是,我希望在客户端本身进行验证,而不是向数据库发送插入请求,然后捕获错误 因此,如何从数据库中检索包含用户名和密码的单个记录,以便在代码中使用它进行比较,然后在需要时抛出验证错误 我的经理希望我使用存储过程,这样沿这些行输入的内容将非常好我希望这是一个密码散列,并且它包括salt或更好的使用bcrypt。您为什么不使用内置的ASP.NET成员资格功能?它甚至在做任何事情时都使用

我有一个表users,它存储三个值,即用户名、密码和成员类型。我希望确保表中存储的用户名是唯一的,因此表中有一个主键。但是,我希望在客户端本身进行验证,而不是向数据库发送插入请求,然后捕获错误

因此,如何从数据库中检索包含用户名和密码的单个记录,以便在代码中使用它进行比较,然后在需要时抛出验证错误


我的经理希望我使用存储过程,这样沿这些行输入的内容将非常好

我希望这是一个密码散列,并且它包括salt或更好的使用bcrypt。您为什么不使用内置的ASP.NET成员资格功能?它甚至在做任何事情时都使用存储过程!@SLaks,使用SHA1身份验证对密码进行散列,我打算检索密码并将其与散列用户输入的密码进行匹配,前提是我已验证数据库中存在该用户,我正在努力做的是获得特定的用户id@Joel C,我的工作对象不希望我使用内置的asp.net成员资格功能,因此需要一个自定义的功能。如果您每小时计费,我想可能会更好;
public static bool IsUserExists(string userName, string hashedPassword)
{
  bool result = false;

  using (MyEntities entityContext = new MyEntities())
  {
    result = (entityContext.User.Count(u => u.username == userName && 
                                            u.password == hashedPassword) == 1);
  }

  return result;
}