Therapyx
@Therapyx
Data Science

Как сделать GridView в asp.net webforms ориентированной на пользователя?

На данный момент располагаю веб приложением, которое использует 1 бухгалтерша. Т.е. логина, регистрации итд, ничего подобного нету.
Сейчас появилась потребность сделать это приложение ориентированное на приличное кол-во пользователей. И вот вопрос в следующем: Как реализовать лучше всего все это в asp.net, c#, mssql так, чтобы каждый пользователь видел только свои данные в соответствующих таблицах?

Пока что думал только о таком варианте: Создать базу юзеров, логин, регу это понятное дело)) Изменить процедуры insert на добавление доп. поля с текущим пользователем. В последствии при заходе на страничку делать select комманду где user = CurrentUser.
- Если это правильный подход, то как узнать потом этого текущего юзера?
- Если же это полный бред, то хотелось бы почитать о правильном варианте))

В инете не проблема найти гайды для логина, регистрации, самим таблицам по асп.нету, а вот именно их работа вместе как-то глушь :(
  • Вопрос задан
  • 476 просмотров
Решения вопроса 2
ProKiLL
@ProKiLL
Системный администратор
С webforms не работал, но мне кажется от winform не сильно отличается, по этому я посоветовал бы сделать так:
- После авторизации кидаем запрос в БД с логином авторизованного (пример: Select id_user, FirstName, Surname from Users where user = CurrentUser)
- Из временной таблицы (сделать ее невидимой) достаем всю необходимую инфу (пример: 2594, Семен, Иванов)
- Подгружаем на страницу или в переменные
Ответ написан
Neuroware
@Neuroware
Программист в свободное от работы время
не понятно на чем крутится база, но я бы сделал так: в БД завести отдельную табличку "users": Login, PassHash, ID
в исходной таблице соответственно добавить столбец UserID в котором соответсвенный ID пользователя
При авторизации делать селект в таблицу с пользователями и получать ID
при запросе в исходную таблицу добавить еще 1 where ID=ВашID
это решение простое, но оно не безопасно и для критичных данных его использовать нельзя.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы