2017-03-10 6 views
1

ユーザーのロールを追加しようとしていますが、その前には存在するかどうかを確認したいと考えています。どうやってやるの? は、ここで私は、ユーザーとそのID = 1を持っている私のコード例追加する前にユーザーの役割を確認しています

public void AddRoleForUser(ApplicationUser obj, IdentityRole role) 
    { 
     _userManager = new ApplicationUserManager(new UserStore<ApplicationUser>(_context)); 

     var currentUser = _userManager.FindById(obj.Id); 
     // before this i have to check 
     var roleresult = _userManager.AddToRole(currentUser.Id, role.Name); 
    } 

です。このユーザーのロールを追加するときに、このユーザーに新しいロールを追加する前にこのユーザーのロールがあることを確認したい

答えて

4

非常に簡単です。 User.IsInRole( "YourRoleName")をチェックするだけです。あなたはユーザーIDで確認したい場合は、怒鳴るコードをチェック 、そのあなたの問題を解決した場合は

if (!userManager.IsInRole(user.Id, "Admin")) 
     { 
      userManager.AddToRole(user.Id, "Admin"); 
     } 

、私はそれがだことを知ってとてもうれしい答え:)

+0

としてマークすることを忘れていけないしてください助けてくれました:)乾杯 –

+0

シンプルなコントローラーでこのクエリを書いていますが、ウェブ用のapiコントローラーではなく、どのようにこのコントローラーでUserMangerを使用できますか? – coderwill

+0

こんにちは@coderwill私のこの答えを確認してくださいhttp://stackoverflow.com/a/43251155/2376652 –

関連する問題