Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как получить значения ролей вошедшего пользователя

32K
15 октября 2013 года
ketzer
10 / / 23.08.2008
Доброго времени суток!

Пользователь логинится. В базе MySQL, в мною созданной таблице, хранятся его логин, пароль, группа (админ, юзер и т.п.) и отдел (филиалы). В самом сайте, после аутентификации, в global.asax читаю ему роли из вышеозначенной таблицы:

Код:
if (User.Identity.IsAuthenticated)
                {
                    string[] roles = new string[2];
                   
                    OdbcConnection myConnection = new OdbcConnection(getConnectionString());
                    myConnection.Open();
                    OdbcCommand myCommand = new OdbcCommand("Sel ect groupName,Department fr om base.webUsers Where userName = '" + User.Identity.Name + "'", myConnection);

                    OdbcDataReader drRoles = myCommand.ExecuteReader();
                    if (drRoles.Read())
                    {
                        roles[0] = (string)drRoles[0];
                        roles[1] = (string)drRoles[1];
                    }
                    myConnection.Close();

                    Context.User = new GenericPrincipal(Context.User.Identity, roles);
                }


Всякие IsInRole, разумеется, работают.
Изначально RoleManager не использовал, потому различные GetRoles И GetRolesForUser не работают.

Итак вопрос: как получить значение второго поля массива roles[] ? или где сохранить эти значения, чтобы они хранились "глобально", дабы не читать их постоянно из бд.

Заранее благодарен.
86K
25 октября 2013 года
Romakky
19 / / 25.10.2013
спасибо
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог