В системе есть синглтон для текущего зарегистрированного пользователя (наш собственный пользователь, а не пользователь Windows), содержащий общий экземпляр.
В нескольких сотнях файлов классов доступа к данным это используется для установки CreatebyID и EditbyID для каждого запроса, отправляемого в базу данных.Почти все классы наследуют одну базу, хотя на данный момент в каждом классе установлены два значения.
Все это отлично работало для настольных приложений компаний в течение многих лет, однако когда одни и те же классы доступа к данным использовались вВ новом веб-приложении зарегистрированный в данный момент пользователь был разделен между всеми сеансами пользователей и не мог быть изменен без проблем.
Как я могу выполнить рефакторинг кода без значительной перезаписи всего DAL и без передачи текущего пользователяили идентификатор пользователя) в каждом экземпляре или установка свойства EditbyID для каждого класса для каждого сохранения.