-1
我是新來的整個LINQ系統,我有我的密碼哈希和存儲在varbinary字段在我的數據庫中,現在我想從我的數據庫中獲取該值,並將其存儲在一個字節數組使用LINQ做比較。我之前是這麼做的:LINQ Varbinary到C#字節數組
System.Data.SqlTypes.SqlBytes sqlPassBinary = dr.GetSqlBytes(dr.GetOrdinal("Password"));
現在我想嘗試和應用這個相同的概念,但這次使用LINQ。我試過,但沒有奏效:
public bool Authenticate(string user, string pass)
{
***LINQDataContext d = new ***LINQDataContext();
var login = from us in d.Users
join ur in d.UserRoles on us.UserRoleID equals ur.UserRoleID
where us.Username == user
select us;
if ((login as IEnumerable<object>).Any())
{
System.Web.HttpContext.Current.Session["UserID"] = login.FirstOrDefault().UserID.ToString();
System.Web.HttpContext.Current.Session["UserRole"] = login.FirstOrDefault().UserRole.ToString();
byte[] sqlbinary = (byte[]) login.FirstOrDefault().Password;;
return true;
}
return false;
}
,我得到這個錯誤:
什麼是「登錄」?您需要爲所有成員顯示完整的代碼示例。 –
「它沒有工作」告訴我們*實際發生的事情很少*。它編譯失敗了嗎?它是否編譯,但給出執行時異常?它是否默默地給你提供不正確的數據?請提供更多信息。 (想想你是否想知道是否有人問你這個問題,並要求你幫助解決。) –