이번 주말에 .NET MVC를 마침내 사용해보고 예상했던대로 몇 가지 장애물이 있습니다.ASP .NET MVC : 특정 조건이 충족되지 않는 경우보기로 리디렉션
개발중인 내 사이트를 암호로 보호하려고합니다. 기본 개념은 매우 간단합니다. BaseController 클래스 (컨트롤러에서 상속되며 다른 모든 컨트롤러 클래스에 상속됩니다)에서 특정 세션 변수가 설정되었는지 확인합니다. 설정되어 있지 않으면 사용자를 암호를 입력 할 수있는 특정보기로 리디렉션해야합니다. 핵심은 액세스하는 사이트의 부분에 관계없이이 요청이 모든 요청에 대해 발생해야한다는 것입니다. 그러나, RedirectToAction가 발생하지 않습니다
if ((Session["siteAuth"] == null || (bool)Session["siteAuth"] != true) &&
filterContext.ActionDescriptor.ActionName != "EnterPassword") {
RedirectToAction("EnterPassword");
}
else {
base.OnActionExecuting(filterContext);
}
OnActionExecuting이 모든 요청에 실행 : 무시 OnActionExecuting를 BaseController 클래스에서 다음과 같은 확인 : 이것은 내가 시도했지만 실패한 것입니다. 기본적으로 렌더링은 그렇지 않으면 렌더링 할 뷰를 렌더링합니다.
내가 찾은 가장 가까운 해결책은 here이지만 모든 요청에 대해 광산을 사용해야합니다.
내가 잘못하고있는 것에 대한 힌트가 있습니까?
+1. 그럼에도 불구하고 옳은 대답입니다. – RichardOD
아마도 내가 그런 존재를 전혀 모르기 때문에. 지금 조사 중입니다. 감사! –