![]() |
Модераторы: gambit |
![]() ![]() ![]() |
|
Redstuff |
|
||||
![]() Команда REDSTUFF ![]() ![]() Профиль Группа: Участник Сообщений: 497 Регистрация: 27.5.2006 Где: Санкт-Петербург Репутация: нет Всего: 1 |
Действительно на SQL запросе лучше)
dr.Read() - одно чтение строки и продвижение вперед?
Это не понял как реализовать. Поэтому при правильном логине и пароле выдает всегда Admin. |
||||
|
|||||
Idsa |
|
||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2086 Регистрация: 5.12.2006 Где: Томск Репутация: 15 Всего: 62 |
Не "и", а "или".
dr.Read() всегда будет равен true при первом Read, т. к. до этого ты проверил, что HasRows != false. Это так, отступление. Вообще здесь (в else) должен быть другой код. Например:
Теперь ты знаешь, админ ли авторизовавшийся пользователь. Это сообщение отредактировал(а) Idsa - 15.8.2007, 21:01 |
||||
|
|||||
Redstuff |
|
||||||
![]() Команда REDSTUFF ![]() ![]() Профиль Группа: Участник Сообщений: 497 Регистрация: 27.5.2006 Где: Санкт-Петербург Репутация: нет Всего: 1 |
У меня так не хотело работать, пробовал так еще до этого примера ![]() Работает только так:
Но все-равно спасибо! ![]() |
||||||
|
|||||||
Exception |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 2 Всего: 186 |
Тьфу, можно было красиво реализовать через role-based security. Я же дал ссылки.
|
|||
|
||||
Redstuff |
|
|||
![]() Команда REDSTUFF ![]() ![]() Профиль Группа: Участник Сообщений: 497 Регистрация: 27.5.2006 Где: Санкт-Петербург Репутация: нет Всего: 1 |
Exception, за ссылочки правдо спасибо, но пока для меня там все кажется так наворочено.
|
|||
|
||||
Redstuff |
|
|||
![]() Команда REDSTUFF ![]() ![]() Профиль Группа: Участник Сообщений: 497 Регистрация: 27.5.2006 Где: Санкт-Петербург Репутация: нет Всего: 1 |
Exception, а есть уже готовая БД с того примера? я с картинки БД постарался у себя воссоздать, но не знаю какой тип для некоторых полей. Ввожу пароль и логин (завел уже в базе), но сообщение о правах выскакивает.
|
|||
|
||||
Idsa |
|
||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2086 Регистрация: 5.12.2006 Где: Томск Репутация: 15 Всего: 62 |
Зачем мудрить? Логика у нас уже реализована. Осталось заменить использование булевой переменной isAdmin на role-based подход. Хотя по большому счету я не вижу необходимости использовать роли в данном примере, т. к. тщательная реализация ролей потребует анализа того, что можно и чего нельзя тому или иному типу пользователей (а если код пишется без предварительного проектирования, то на данный момент это может быть затруднительно)... а у нас всего 2 типа пользователей, так что игра не стоит свеч. Если все-таки очень сильно хочется... заменяем код определения типа пользователя на следующий код:
Тогда в любом месте программы узнать тип пользователя можно будет вот так: if (Thread.CurrentPrincipal.Identity.Name == "Administrator") ... Вместо ролей конструктору GenericPrincipal я передаю null... Это несколько нивелирует преимущество использования role-based подхода. Хорошо было бы лишить код этого недостатка (это я оставляю на совести автора программы ![]() |
||||
|
|||||
DEADLY |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 62 Регистрация: 23.8.2007 Репутация: нет Всего: 1 |
а как получить имя пользователя???
|
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Базы данных под .NET | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |