2016-11-03 6 views
0

特定の「会社」のユーザーが「ロール」であるかどうかを確認する方法を作成します。ASP.NET ID 2.0 IsInCompanyRole(role、company)

私の 'のUserRole' テーブル 'をユーザーID' と 'RoleId' と一緒に会社のテーブルへの外部キーとして 'たCompanyId' が含まれています。

私は「User.IsInRole」メソッドとして、「User.IsInCompanyRole(role,company)」のような表記法で使用するメソッドを実装するために苦労しています。

私にこれを案内してください。

+2

ようIsInCompanyRoleは、拡張メソッドである必要があり、あなたはカスタム要求を持つ企業のための役割を管理することができます。 リサーチして試してみてください。一度試してみると元に戻ります。戻ってきてください。 –

+0

ありがとう@Zoran。あなたの指針で解決策を見つけました。 –

答えて

1

@Zoranと記載されている解決策が見つかりました。今私の主張は必要ありません。拡張メソッドを作成すると、魅力のように動作します。 Extension Methods (C# Programming Guide)

ここは私の延長です。

public static class Extention 
{ 
    public static bool IsInCompanyRole(this IPrincipal user, string role, int companyId) 
    { 
     // Code goes here 
    } 
} 

ANS使い方は簡単です

User.IsInEntityRole("Admin",1) 
+1

うれしい私は助けることができる:) –