メンバーシップにユーザーがいて、1 人のユーザーに 1 つまたは複数のロールを割り当てることができます。たとえば、ページの特定の役割を確認したい:
Role1、Role2、Role3、Role4、Role5
Role2 と Role3 のアクセス権を持つユーザーは Page1.aspx にアクセスできます。また、Role2 が使用可能であるため、Role1 と Role2 のアクセス権を持つユーザーもアクセスできます。
メンバーシップを実装し、ユーザーの役割の文字列配列のリストを持っています
string[] roles = Roles.GetRolesForUser(User.Identity.Name);
複数の役割を確認するにはどうすればよいですか? Roles.IsUserInRole 関数を使用して、1 つずつチェックする必要がありますか?
利用した; Partner in Capital のため 0 カウントを返します。大文字と小文字を区別しないようにするにはどうすればよいですか? 以下は、配列に対して配列をチェックする正しい方法ですか?
string[] userroles = { "Partner", "testsetsr" };
string[] requiredroles = { "contractor", "customer", "sims", "nonclientau", "partner" };
var countInRoles = userroles.Intersect(requiredroles).Count();