2017-03-03 8 views
0

저는이 사용자 지정 역할 공급자에 대해 상당히 새로운 것 같아서 좋았습니다. 이제는 사용자가 웹 응용 프로그램의 특정 부분을 보거나 액세스하도록하려고합니다. 역할에 따라이 역할은 데이터베이스 (admin, user 및 super_user)에 있습니다. 나는라는 클래스 UserRoleProvider이 아래 나는이 무엇인지로부터 완전히 다른 반환 무엇ASP.NET MVC 5 사용자 지정 역할 공급자가 예상 값을 반환하지 않습니다.

public override string[] GetRolesForUser(string username) 
    { 
     using (CADDeContext caddeContext = new CADDeContext()) 
     { 
      int? roleId = caddeContext.SMS_Staff.First().StaffSecurity; 
      string site = caddeContext.SMS_Staff.First().BranchID; 

      return new string[] { roleId.ToString() }; 
     } 
    } 

이 방법은 데이터베이스에있는 값 중 하나를 반환하지 않습니다 작동하지 않을 것 그것의 일부이며, 데이터베이스에서이 모든 값을 어디에서 얻을 수 있습니까? 저는 100 % 웹 구성 문자열에 올바른 연결 문자열을 가지고 있습니다. 또한 quickwatch로이 연결을 두 번 확인했습니다. 아래는 내가

Expected database fields to be returned

답변

0

오, 아니 난 그냥 어떻게했는지 크고 어리석은 실수 믿을 수없는 상황에서 얻을 것으로 예상하고 모든 필드의 (값없이) 스크린 샷에 where 절에는이,없는 내 쿼리 및 또한 "첫 번째"내 쿼리에 포함, 모든 것을 던져, 나는 너무 바보 같은 느낌 : (