Мне дали задание обновить систему asp до MVC3. Моя главная проблема заключается в том, что в текущей системе есть 2 разных типа пользователей, у каждого пользователя есть своя собственная таблица пользователей, а в текущем asp-сайте каждый пользователь определяется рядом различных переменных, хранящихся в сеансе.
Поскольку другие системы используют две разные пользовательские таблицы, я не могу их объединить. Так что будет лучшим путем вперед?
Я изначально думал о том, чтобы держать их отдельно в системе; иметь тип класса для каждого пользователя, который содержит отдельные переменные, отраженные от их коллеги asp. При входе в систему я мог бы выдвинуть тип пользователя в userdata в файле cookie auth, а затем создать метод расширения в IPrincipal, чтобы при необходимости возвращать тип пользователя.
Это выглядит как взлом, и поскольку пользователи будут просматривать одни и те же страницы, будет много дублирования кода.
Было бы лучше создать некоторую форму фасада перед пользовательским репозиторием, которая бы приписывала роль общему пользовательскому объекту, который идентифицировал бы тип пользователя в системе? Затем я могу проверить эту роль и извлечь данные, которые раньше хранились в переменных сеанса, когда это необходимо.