Tôi cần chuyển hướng người dùng đến trang Thay đổi mật khẩu nếu mật khẩu của họ đã hết hạn.Tôi nên đặt séc có thể chuyển hướng yêu cầu ở đâu?
Tôi muốn đặt mã này ở một nơi để mọi yêu cầu có thể được chuyển hướng đến trang thay đổi mật khẩu.
Tôi đã xem xét mở rộng AuthorizeAttribute và ghi đè OnActionExecuting, nhưng không hoạt động/cho phép tôi ngắn mạch logic định tuyến để chuyển hướng đến trang thay đổi mật khẩu.
Đối với một giải thích chút, logic sẽ là:
yêu cầu trái phép:
-> bất kỳ URL -> AuthorizeAttribute -> Login.aspx -> mật khẩu hết hạn -> ChangePassword.aspx
yêu cầu ủy quyền :
-> URL bất kỳ ->??????? -> ChangePassword.aspx
Điều đó ???? một phần mà tôi không chắc chắn phải làm gì.
Tôi nghĩ rằng tôi sẽ đi với mở rộng AuthorizeAttribute. Tôi sẽ sử dụng ở mọi nơi ngoại trừ các phương pháp điều khiển thay đổi mật khẩu.
Đây thực chất là những gì tôi đã làm. – Will
Tôi biết đây là một câu trả lời cũ, vì vậy tôi nghĩ rằng tôi sẽ thêm rằng (ít nhất là cho MVC3) 'filterContext.HttpContext.Response.Redirect (" ~/Account/ChangePassword? Reason = hết hạn ");' nên được thay thế bằng ' filterContext.Result = new RedirectResult ("~/Account/ChangePassword? reason = hết hạn"); '(Dựa trên: http://stackoverflow.com/a/2187364/700926 và http://stackoverflow.com/a/2765148/700926) –