У нас есть веб-приложение с панелью администрирования с несколькими пользователями, созданная с использованием ASP.NET MVC. Поскольку несколько пользователей одновременно получают доступ к одной странице, в базу данных будут обновляться только последние измененные и сохраненные данные пользователя. Это создает проблемы для других пользователей.Запретить одновременный доступ к странице в ASP.NET MVC
- Есть ли возможность запретить одновременный доступ пользователей к одной странице в любое время? Если пользователь уже работает на странице, система должна предупредить другого пользователя, который пытается получить доступ к той же странице, что «Кто-то еще работает на этой странице. Попробуйте через некоторое время».
- Есть ли какие-либо средства для этой проблемы, предоставленные самой средой MVC или .NET-аутентификацией?
- В противном случае любое подходящее логическое решение также прекрасное.
Заранее спасибо ...
Вы можете сделать это в Db уровень. Если кто-то уже редактирует страницу или форму, просто используйте столбец бит, чтобы предотвратить одновременное редактирование. В этом случае вы можете создать другую или в той же таблице. Просто обновите столбец 1 при обновлении и 0, когда закончите. –
@ AT-2016, не работает, если первый пользователь отказался от редактирования - флаг никогда не перезагружается, и никто еще не редактирует его :) –
если кто-то получил доступ к странице, и я обновил поле бит до 1, и он оставил на странице без нажатия кнопки «Отправить». страница станет непригодной для всех пользователей на неопределенный срок. правильно? –