2009-07-31 8 views
11

ユーザーが役割にあるかどうかを判断するコードは何ですか?asp.netのメンバーシップ - プログラマチックに決定する方法は、ユーザーがロールにあるかどうかです。

私はすべてのユーザーをASP.NET構成のセキュリティタブで設定しましたが、特定の役割のユーザーだけがこれらの領域を参照してアクセスできるように、ロジックをいくつかの重要な領域に配置したいと考えています。

答えて

22
if (User.IsInRole("rolename")) { 
    // my action 
} 
+0

どのような名前空間があなたに使用されていますか? – leora

+3

ユーザーはPageクラスとHttpContextクラスのプロパティであるため、単にUserとして、またはHttpContext.Current.Userのような非ページファイルにアクセスできます。さらに詳しい情報はMSDN:http://msdn.microsoft.com/en-us/library/system.web.httpcontext.user.aspx –

2

私はこれらのすべての時間を使用し、特別のisUserInRole、GetUsersInRole、AddUserToRoleなど

Rolesクラスをチェックしてください。 "クリスヴァンOpstal" へ

8

簡単〜

HttpContext.Current.User.IsInRole("roleName") 
+0

このコードはaspでの役割を決定するためにSQLデータベース(thats my provider)を調べます。ネット? – leora

+1

はい、あなたが設定したプロバイダーを探します。 –

+0

プロバイダが大好きです:) – BigBlondeViking

2

感謝。私はこのように私の問題を解決しました。

public ActionResult Index() 
    { 

     if (User.IsInRole("Supervisor")) 
     { 
      return RedirectToAction("Index", "InvitationS"); 
     } 
     return View(); 
    } 
関連する問題