나는 세션을 가짜로 만들 수있는 예제를 사용하고 있습니다. mvc 컨트롤러의 unittest에 사용하기위한 것입니다. 테스트에서 ControllerContext.HttpContext.Session과 HttpContext.Current.Session의 차이점은 무엇입니까
내가 컨트롤러를 만든 다음 내가 이렇게 : 나는에있을 때mSessionItems
내 세션
target
입니다
FakeHttpContext httpctx = new FakeHttpContext(null,null,null,null,mSessionItems);
ControllerContext ctx2 = new ControllerContext(httpctx,new RouteData(), target);
는
실제로 컨트롤러의 내 인스턴스 콘트롤러 읽기 this.ControllerContext.HttpContext.Session
, 나는 세션이 좋다!
하지만 .... 컨트롤러 외부에서 세션을 읽었는데 거기에 HttpContext.Current.Session
을 사용하고 그 값은 null입니다 (또는 실제로는 HttpContext.Current
이 null 임).
두 가지의 차이점은 무엇입니까?
나는 HttpContext.Current.Session (물론 null을 확인한다.)을 얻을 것이다. 하지만 단위 테스트 시나리오에서 나는 막힐거야. – Michel