0
사용자 인증 방법이 있지만 테이블에 레코드가 있어도 user = null
을 반환합니다.이 Linq이 null을 반환하는 이유는 무엇입니까?
public bool AuthenticateUser(string username, string password)
{
var user = GetSingleRow(c => c.Email.Equals(username) && c.Password.Equals(password) && IsActive);
if(user !=null && user.Id > 0)
{
// my statements
}
}
클래스 & 방법의 구현 :
public partial class UserAccount :IRepository<UserAccount>
{
private static readonly MeriRanchiDataContext Context;
public UserAccount GetSingleRow(Func<UserAccount, bool> criteria)
{
return Context.UserAccounts.Where(criteria).SingleOrDefault();
//tried this also: return Context.UserAccounts.SingleOrDefault(criteria);
}
}
데이터베이스에 일반 텍스트 비밀번호가 있습니까? 또한 표현식 트리 대신 델리게이트를 사용하기 때문에 사용자 계정을 모두 * 가져 와서 해당 술어를 로컬에서 적용한다는 사실을 알고 있습니까? –
데이터베이스에 일반 텍스트 비밀번호를 저장하려고합니다. –
@JonSkeet "또한 표현식 트리 대신 대리인을 사용하기 때문에 모든 사용자 계정을 가져 와서 로컬에서 조건부를 적용 할 것임을 알고 있습니까?" "이것은 술어를 사용하는 잘못된 접근입니까?" –