2014-10-30 4 views
0

먼저 로그인 사용자를 기준으로 rolename을 가져옵니다. 그런 다음 역할을 기반으로 db에서 functioncode를 가져옵니다. 나는 Arraysql 결과를 할당 할 필요가 있지만, 쇼 오류 can't convert from string to string[]배열에 값을 할당하는 방법 #

public override string[] GetRolesForUser(string username) 
    { 
     DEV_Context OE = new DEV_Context(); 
     string role = OE.UserRefs.Where(x => x.UserName == username).FirstOrDefault().RoleName; 

     string[] permission = OE.RolePermissionRefs.Where(x => x.RoleName == role).FirstOrDefault().FunctionCode; 
     string[] result={permission}; 

     return result; 
    } 
+0

같이한다; ? 더 나아가 배열 대신 Collection-Types를 사용하도록 조언합니다. 예를 들어 List Jannik

답변

1

당신은 문자열의 배열을 필요로 유지, 그래서 대신에 FirstOrDefault를 사용하는 Select 및 이상 ToArray 방법을 사용합니다.

당신의 방법은 그냥 권한을 반환 해달라고 왜

public override string[] GetRolesForUser(string username) 
{ 
    DEV_Context OE = new DEV_Context(); 
    string role = OE.UserRefs.Where(x => x.UserName == username).FirstOrDefault().RoleName; 

    string[] result= OE.RolePermissionRefs.Where(x => x.RoleName == role).Select(x=>x.FunctionCode).ToArray(); 

    return result; 
} 
+0

설명을 주셔서 감사합니다. – WengKit

관련 문제