[英]Using MySQL PASSWORD() with Entity Framework
我们有一个旧的MySQL数据库,该数据库具有使用MySQL函数PASSWORD()存储的密码。 有没有一种方法可以在C#中使用Entity Framework选择带有密码的行?
旧的方法是执行sql查询
SELECT * FROM `employees` WHERE `id` = @id AND `password` = PASSWORD(@pword);
然后,将@id和@pword作为参数传递给.Net连接器。
在实体中,我们这样做
var query = from employeeRow in context.employees
where employeeRow.id.Equals(username_txt.Text)
select employeeRow;
_foundEmployee = query.SingleOrDefault();
但这将返回行数据,而不检查密码。 我如何检查已用MySQL PASSWORD()散列的密码?
where employeeRow.id.Equals(username_txt.Text) && employeeRow.password.Equals(hashedPassword)
您需要单独进行密码哈希处理。 我怀疑mysql文档会告诉您PASSWORD()方法使用什么算法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.