我想在vNext中重新創建HttpContext.Current
,但我遇到了這個問題。如何從DI系統獲取實例?
至今代碼:
public class CurrentContext
{
public IHttpContextAccessor ctx { get; private set; }
public CurrentContext(IHttpContextAccessor accessor)
{
ctx = accessor;
}
}
services.AddTransient<CurrentContext>();
我想用:
public static class UserFactory
{
public static void SetCurrentUser(User u)
{
//tryed to get the context but GetService returns null
IHttpContextAccessor _context = ((CurrentContext)CallContextServiceLocator.Locator.ServiceProvider.GetService(serviceType: typeof(CurrentContext))).ctx;
//add the user to the Session
}
}
如何我現在得到的CurrentContext
實例在項目的任何地方?
可能的重複[如何使用IHttpContextAccessor實現UserFactory](http://stackoverflow.com/questions/32316180/how-to-implement-a-userfactory-using-ihttpcontextaccessor) – janhartmann