Доступ к объекту DI после завершения запроса. asp .net core 2.1

#api #asp.net-core #dependency-injection #lifecycle

#API #asp.net-core #внедрение зависимости #жизненный цикл

Вопрос:

Я хочу получить доступ к объекту dbcontext DI после завершения запроса, например, выполнить какую-либо фоновую задачу при выполнении запроса fet и сделать его коротким.

пример кода:

 await bunusInfoService.CheckBonus(user.Id, _appSettings.GregSysRegisterIP);
UserDto uss = Mapper.Map<UserDto>(user);
return uss; 
  

но вызов bunusInfoService.Проверка бонуса без ожидания.

в нем говорится:

Не удается получить доступ к удаленному объекту. Распространенной причиной этой ошибки является удаление контекста, который был разрешен при внедрении зависимостей, а затем последующая попытка использовать тот же экземпляр контекста в другом месте вашего приложения. Это может произойти, если вы вызываете Dispose() в контексте или оборачиваете контекст в инструкции using. Если вы используете внедрение зависимостей, вы должны позволить контейнеру внедрения зависимостей позаботиться об удалении экземпляров контекста.

Комментарии:

1. Если вы можете поделиться соответствующим кодом, мы поможем лучше устранить проблему.

2. вот так: ожидайте bunusInfoService. CheckBonus (пользователь. Идентификатор, _appSettings. GregSysRegisterIP); UserDTO uss = Mapper.Map<Пользовательское имя>(user); uss. Токен = GenerateJWTToken(user.Id.toString(), «Пользователь»); uss.refreshToken = currentAuth. refreshToken; uss.RefreshTokenExpDate = currentAuth. RefreshTokenExpDate; uss.isSuccess = true; возвращает uss; } но вызов bunusInfoService. Проверка бонуса без ожидания