2011-05-25 71 views
1

它來自哪個命名空間,因爲它告訴我用戶不存在於當前上下文中!User.Identity.Name有什麼問題

這是我的命名空間列表。我應該添加哪一個:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Data.SqlClient; 
using System.Data; 
using System.Web.Configuration; 
using System.Web.Security; 

另一個問題是,檢查登錄的人是否是管理員的方法?

if (Roles.IsUserInRole(User.Identity.Name, "Administrators")) 
     { 
+1

這段代碼是在頁面還是類l ibrary?在一個類庫中,用戶應該在HttpContext.Current – 2011-05-25 14:23:00

+0

該代碼是在一個簡單的類內..我應該在哪裏放HttpContext? – 2011-05-25 14:35:01

回答

4

您需要以下命名空間:

using System.Security.Principal; 

檢查角色的最簡單的方法是:

User.IsInRole("Administractor"); 
+0

謝謝。問題解決了 – 2011-05-25 14:38:21

4

如果你在一個代碼庫,而不是網頁本身你需要:

HttpContext.Current.User