2010-05-10 3 views
1

Je suis en train d'utiliser this article pour en savoir plus sur roleproviders personnalisés, mais j'obtiens cette erreur:ASP.NET erreur RoleProvider personnalisé

Impossible de charger le type « TestRoles.SimpleRoleProvider ».

La section pertinente de mon web.config:

<roleManager enabled="true" defaultProvider="SimpleRoleProvider"> 
     <providers> 
      <add name="SimpleRoleProvider" type="TestRoles.SimpleRoleProvider"/> 
     </providers> 
    </roleManager> 

La classe RolesProvider.cs:

public class TestRoles{ 
public class SimpleRoleProvider : RoleProvider 
{ 
    public override string[] GetRolesForUser(string username) 
    { 
     List<string> roles = new List<string>(); 
     roles.Add("Guest"); 
     if (username.Equals("Dave")) 
      roles.Add("Admin"); 
     return roles.ToArray(); 
    } 
} 
} 

De cette erreur, il semble que cela ne peut pas trouver le RoleProvider. Des idées?

Répondre

1

Eh bien, il me semble que votre espace de noms est erroné:

TestRoles.SimpleRoleProvider

Votre espace de noms doit me TestRoles et votre nom de classe SimpleRoleProvider

Changer votre TestRoles de classe à l'espace de noms et assurez-vous que vous n'avez pas d'autres espaces de noms au-dessus de TestRoles comme xy.TestRoles.SimpleRoleProvider

+0

Oh mon garçon, c'était ça. Je ne sais pas combien de temps j'ai passé à regarder ce code sans même me rendre compte que j'avais tapé 'class' au lieu de 'namespace'. Merci! – Ethan

+0

Je suis heureux que je pourrais vous aider ... merde happenz – MUG4N

Questions connexes