내가 몇 가지 시나리오에서 다른 페이지로 리디렉션 할 필요가 MVC에 상당히 새로운 있지만, 리디렉션이 ... 웹폼에서 사용되는 표준 리디렉션 예를 들어 표준 Response.Redirect()
ASP.NET MVC : MVC의 페이지/작업으로 리디렉션하는 올바른 방법은 무엇입니까?
즉 대체를 정확하게 확실하지 않다 :
1) 사용자가 로그 아웃 할 때 (양식 사인 인 동작) 로그인 페이지로 리디렉션하고 싶습니다.
여러 리디렉션이 오류, 뭔가 원인이 어떤 경우에 호출되는 것으로 보인다 컨트롤러 또는 기본 컨트롤러 이벤트 등 Initialize
에서
2), 나는 다른 페이지 (AbsoluteRootUrl + 컨트롤러 + 액션)로 리디렉션 할 페이지가 이미 리디렉션되고 있다는 사실과 관련이 있습니까? 현재 요청을 취소하고 리디렉션하는 방법은 무엇입니까?
업데이트 :
이 질문에 (System.Web.Mvc.Controller Initialize)에 대한 답변은 Initialize
는 사용하지 말아야하고 OnActionExecuting
사용하는 것을 나타낸다?
Initialize
을 사용하면 안되는 이유 또는 OnAuthorization
을 사용하는 것이 더 좋은 이유에 대한 의견이 있으십니까?
추가 정보 :이
이 블로그 게시물 (http://blog.wekeroad.com/blog/aspnet-mvc-securing-your-controller-actions/가) 내가 기본 컨트롤러 클래스에서 해당 이벤트에이 추가 같아요 (위의 링크에 표시된대로) OnActionExecuting
가 인증을 위해 유용하다는 것을 나타냅니다 모든 미세하다 페이지는 MVC에서 액션을 실행하므로 많은 차이를 만들 수 없으며 리디렉션 기능이 쉬워야합니다. 이것은 의미가 있지만,이 사건 이전에 어떤 일이 일어날 수 있으며, 그 사건이 무엇인지 질문하게 만드는 것은 나에게 의미가있는 것처럼 보입니다. ..
이 기본 컨트롤러가 이벤트 초기화 무엇 당신이 언급 한 :
라우팅 엔진이 자동으로 당신이 간단하게 할 컨트롤러의 index 액션에서 리디렉션 할 말은 경우에 와서 요청을 처리? –
@Mahesh Velaga : Initialize 이벤트를 재정의하는 기본 컨트롤러가 있습니다. 즉, protected override Initialize (System.Web.Routing.RequestContext requestContext) ... 거기에 보안 검사가 있습니다.이 검사를 기반으로 사용자를 리디렉션해야합니다. –
이유 tempdata 또는 viewdata에서 일부 값을 설정하지 않고 RedirectToAction을 사용하여 리디렉션 할 수있는 값을 기반으로 제어기 작업에 도달하면? –