Пользовательское перенаправление, если роли не совпадают - PullRequest
1 голос
/ 16 июля 2010

У меня есть результат действия

[Authorize(Roles = "Administrator,Paidmember")]
public ActionResult ListPhotosbyModel(int? id)
{

}

Если пользователь, вошедший в систему, не входит в одну из ролей, которую он перенаправил на экран входа в систему, но я хочу, чтобы они были перенаправлены на страницу оплаты, где после успешного завершенияпользователь добавлен в paidmember.

Как перенаправить на страницу оплаты, а не на страницу входа, если не в одной из этих ролей?

Ответы [ 2 ]

2 голосов
/ 16 июля 2010

Вам нужно будет написать собственный атрибут авторизации, как tvanfosson в своем ответе Здесь .

Тогда вы сможете сделать что-то вроде

[MyAuthorize(Roles = "Administrator,Paidmember", ViewName = "paidmember")]

Это прекрасно работает для меня.

0 голосов
/ 16 июля 2010

Что вы можете сделать, это переопределить атрибут Authorize и вернуть свой собственный ActionResult, если роль неверна.

...