有人可以将此代码转换为linq吗?
SELECT PWDCOMPARE('1', Password) FROM dbo.Users WHERE Username = 'Admin'
我想使用linq语句对用户进行身份验证。
使用sql pwdencrypt
函数
答案 0 :(得分:2)
您需要做的是将PWDCOMPARE
包装在数据库中的UDF中,然后通过DataContext
调用该UDF。
http://msdn.microsoft.com/en-us/library/bb399416.aspx
所以在你的数据库上运行它:
CREATE FUNCTION fn_PWDCOMPARE (@pwd NVARCHAR(MAX),@pwdhash NVARCHAR(MAX))
RETURNS BIT
BEGIN
RETURN PWDCOMPARE(@pwd, @pwdhash)
END
然后将其添加到Visual Studio中的DataContext
并将其称为
var query =
from user in db.Users
where user.Username = "Admin"
select db.fn_PWDCOMPARE("1", user.Password);