Пользовательская ошибка поставщика ролей ASP.NET

Я пытаюсь использовать эту статью, чтобы узнать о пользовательских поставщиках ролей, но я получаю следующую ошибку:

Не удалось загрузить тип TestRoles.SimpleRoleProvider.

Соответствующий раздел из моего web.config:

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

Класс 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();
    }
 }
 }

Из этой ошибки кажется, что он не может найти RoleProvider. Есть идеи?


person Eyeball    schedule 10.05.2010    source источник


Ответы (1)


Ну, мне кажется, что ваше пространство имен неверно:

Тестролес. Симплеролепровидер

Ваше пространство имен должно содержать TestRoles и имя вашего класса SimpleRoleProvider.

Измените свой класс TestRoles на пространство имен и убедитесь, что у вас нет другого пространства имен над TestRoles, например xy.TestRoles.SimpleRoleProvider.

person MUG4N    schedule 10.05.2010
comment
О, мальчик, это было все. Я не знаю, как долго я смотрел на этот код, даже не осознавая, что набрал «класс» вместо «пространство имен». Спасибо! - person Eyeball; 11.05.2010