0
사용자 지정 역할 공급자를 만드는 데 사용했습니다.asp.net MVC3 LINQ 식
내 프로젝트 - asp.net의 MVC3, 엔티티 프레임 워크 4
는 GetRolesForUser 방법에 문제가 있습니다.
사용자 지정 RoleProvider - GetRolesForUser 방법
// The user to return a list of roles for.
public override string[] GetRolesForUser(string userAccount)
{
var userId = userRepository.GetUser(userAccount).UserId;
var roleIds = from ur in usersInRoleRepository.UsersInRoles
where ur.UserId == userId
select ur.RoleId;
var roleNames = from r in roleRepository.Roles
where roleIds.Contains(r.RoleId)
select r.RoleName;
if (roleNames != null)
{
**return roleNames.ToArray(); // here Error**
}
else
{
return new string[0];
}
}
오류 메시지 : 지정된 LINQ 표현이 다른 문맥과 관련된 질의에 대한 참조를 포함합니다.
이 코드에 문제가 있는지 여부는 알 수 없습니다.
도와주세요.
사용자 엔티티
public class User
{
public Guid UserId { get; set; }
public string UserAccount { get; set; }
public string Password { get; set; }
public string UserEmail { get; set; }
public DateTime JoinDate { get; set; }
public DateTime LoginDate { get; set; }
}
역할 법인
public class Role
{
public Guid RoleId { get; set; }
public string RoleName { get; set; }
public DateTime CreateDate { get; set; }
}
UsersInRole 법인은
public class UsersInRole
{
public Guid UserId { get; set; }
public Guid RoleId { get; set; }
public DateTime SetDate { get; set; }
}
감사합니다. 문제가 해결되었습니다. – user2214027
@ user2214027 그런 다음 답을 오른쪽으로 표시하십시오. :) – Alex