2012-08-31 77 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命名空間成員的「角色」,這可能意味着您錯過了「using System.Web .Security「聲明靠近文件頂部。如果您在運行時遇到有人嘗試登錄的錯誤,那麼您遇到了一個非常陌生的例外。

+0

對不起,我真的不明白 –

+0

他說編譯器無法解析「角色」對象,因爲缺少include指令。您也可以將其重寫爲「System.Web.Security.Roles.IsInRole ...」。這至少會告訴你,如果問題是缺少包括。 –

相關問題