2016-07-15 2 views
2

나는이 문제에 대해 매우 읽었지만이 문제를 해결할 수는 없으므로이 사이트에서 새로운 질문을 생성한다고 생각합니다.시작시 HttpContext.Current.GetOwinContext()를 얻는 방법

HttpContext.Current.GetOwinContext(); 

위 코드로 GetOwinContext 값을 가져오고 싶습니다. 위의 코드가 내 startup.cs

[assembly: OwinStartupAttribute(typeof(OwinTest.Startup))] 

public partial class Startup 
{ 
    public void Configuration(IAppBuilder app) 
    { 
     ConfigureAuth(app); 
     var c = HttpContext.Current.GetOwinContext(); 
    } 
} 

에 있고 난

// 아니 owin.Environment 항목이 맥락에서 발견 된이 오류가

하지만 HomeController 벌금에 나를 위해 var c = HttpContext.Current.GetOwinContext(); 작동합니다. !

제 startup.cs 클래스에 GetOwinContext가 있습니다. thankfull

답변

4

당신은 할 수 없습니다. OWIN 컨텍스트는 요청없이 존재하지 않으며 Startup 클래스는 각 요청이 아닌 응용 프로그램에 대해 한 번만 실행됩니다. Startup 클래스는 미들웨어와 애플리케이션을 초기화해야하며 미들웨어와 애플리케이션은 필요할 때 OWIN 컨텍스트에 액세스해야합니다.