2012-08-31 3 views
0

아래 코드를 사용하여 역할에 따라 페이지 리디렉션을 만들려고하면 "현재 역할에서 이름 '역할'이 존재하지 않는다는 오류가 발생했습니다. 코딩에 어떤 문제가 있는지 전혀 알지 못합니다. 도와주세요. 감사.페이지 리디렉션 중 오류가 발생했습니다 (asp.net)

protected void Login1_LoggedIn(object sender, EventArgs e) 
{ 
    { 
     if (Roles.IsUserInRole(Login1.UserName, "Aemy")) 
      Response.Redirect("~/Admin/Home.aspx"); 
     else if (Roles.IsUserInRole(Login1.UserName, "User")) 
      Response.Redirect("~/Welcome/User1.aspx"); 
    } 
} 
+0

나는 전에 똑같은 문제에 직면 해있다. 전체 프로젝트를 다시 빌드하려고 시도한다. – Hassanation

+0

당신이 얻고있는 모든 예외를 게시하라. –

+0

컴파일 시간이나 실행 중입니까? 실행중인 경우 코드를 변경 한 후 프로젝트를 다시 빌드해야합니까? – VIRA

답변

0

해당 파일의 System.Web.Security에 using 문이 누락 되었습니까? 여기 컴파일 시간에 오류가 발생한다고 가정합니다.

명확성을 위해 편집 : 질문은 언제 발생합니까?이 오류는 언제 발생합니까? 프로젝트를 컴파일하려고 할 때이 오류가 발생하면 System.Web.Security 네임 스페이스의 멤버에게 "Roles"를 해결할 수 없다는 것을 의미합니다. 이는 "System.Web" .Security "문을 파일 위쪽에 넣으십시오. 런타임에 누군가가 로그인을 시도 할 때이 오류가 발생하면 훨씬 더 낯선 예외가 발생합니다.

+0

정말 죄송합니다. –

+0

누락 된 include 지시문이 있기 때문에 컴파일러가 "Roles"객체를 해결할 수 없다고합니다. "System.Web.Security.Roles.IsInRole ..."으로 다시 작성할 수도 있습니다. 적어도 문제가 누락 된 항목인지 여부는 알 수 있습니다. –

관련 문제