Ограничение пользователя от контроллера прыжка и методов действий
Приложение ASP.NET MVC 1.0 больше похоже на рабочий процесс.
Средства: Родитель метод действия контроллера (аутентификация) -> метод по уходу за детьми 1 Действие -> Ребенок 2 Метод Действие -> Ребенок п Действие
Теперь, как только посетитель завершает проверку подлинности с помощью метода действия родительского контроллера он может создать URL-адрес и перейти непосредственно к методу действий child-2. Мы хотим избежать этого, и в этом случае мы хотим, чтобы они были на странице с ошибкой.
Как мы можем реализовать, чтобы запретить пользователю переходить от 1 к другому методу действий?
Спасибо большое! Я думал о более продвинутом решении. У нас есть много рабочих процессов, подобных этим. Таким образом, работа была бы огромной. Можем ли мы украсить метод Action, чтобы мы могли достичь того же? – amit
Вы можете использовать 'HandleErrorAttribute', т. Е .:' [HandleError (View = "YourErrorPageView", ExceptionType = typeof (TriedToGoToStepNotAuthorizedForException))]. Вы также можете создать пользовательский 'FilterAttribute' (или расширить' HandleErrorAttribute'), который позволит вам указать любые критерии, необходимые для выполнения метода, такие как HttpMethods, QueryString key/values и т. Д. I что использование атрибутов таким образом позволит вам ActionMethod сосредоточиться на своем собственном выполнении, в то время как 'FilterAttribute' может обрабатывать решение о том, должен ли этот метод выполняться. –
Есть ли способ, которым мы имели Предыдущее посещение (имя контроллера/действия), что-то вроде referrer? Чтобы я мог проверить метод дочернего действия, если реферер является родителем или нет! Пожалуйста, порекомендуйте. – amit