2017-03-03 6 views
0

Je suis assez nouveau à ce fournisseur de rôle personnalisé (je pense que c'est bien si), maintenant j'essaye d'obtenir l'utilisateur pour voir ou accéder à certaines parties de l'application web en fonction de leurs rôles, ces rôles sont dans la base de données (admin, user et super_user). J'ai une classe nommée UserRoleProvider et ci-dessous est la partie qui semble ne pas fonctionnerASP.NET MVC 5 fournisseur de rôle personnalisé ne retourne pas les valeurs attendues

public override string[] GetRolesForUser(string username) 
    { 
     using (CADDeContext caddeContext = new CADDeContext()) 
     { 
      int? roleId = caddeContext.SMS_Staff.First().StaffSecurity; 
      string site = caddeContext.SMS_Staff.First().BranchID; 

      return new string[] { roleId.ToString() }; 
     } 
    } 

cette méthode ne renvoie aucune des valeurs dans la base de données, ce qui est retourné son totalement différent de ce que j'ai dans la base de données, où obtient-il toutes ces valeurs, je 100% j'ai la bonne chaîne de connexion dans la configuration web, j'ai également vérifié cette connexion avec quickwatch. Voici la capture d'écran (sans valeurs) de tous les champs que je me attends à obtenir du contexte

Expected database fields to be returned

Répondre

0

Oh non, je ne peux pas croire à quel point grosse erreur et stupide que je viens de faire, il n'y a pas where sur mon requête et aussi l'inclusion de "premier" sur ma requête, a tout jeté, je me sens tellement stupide :(