У меня есть приложение ASP.NEt MVC 5, которое использует сервис для доступа к информации о пользователе.
В настоящее время я передаю его в качестве параметра методу в классе обслуживания или выполняю в каждом методе, где это требуется, в следующих случаях:
if (HttpContext.Current.User.Identity.IsAuthenticated)
{
var user = HttpContext.Current.User;
// do some stuff
}
Как я могу выполнить рефакторинг кода, например, для ввода кодаэто в конструктор класса так, чтобы он был доступен для любого метода в классе, или это правильно, как я делаю это в настоящее время, например, передавая его в качестве параметра?
public class ViewModelBuilderService : IViewModelBuilderService
{
private readonly IUnitOfWork _unitOfWork;
public ViewModelBuilderService(IUnitOfWork unitOfWork)
{
_unitOfWork = unitOfWork;
}
// Other methods...
}