редирект на ресурс результата маршрута не найден - PullRequest
0 голосов
/ 27 января 2011

У меня есть фильтр действий, который реализует базовую проверку, чтобы убедиться, что пользователь аутентифицирован.

если пользователь не аутентифицирован, я реализовал это:

        var routeValue = new RouteValueDictionary
                             {                                     
                                 {"Controller", "Permission"},
                                 {"Action", "NoAccess"}
                             };

        filterContext.Result = new RedirectToRouteResult(routeValue);

        base.OnActionExecuting(filterContext);

хорошо, это работает и указывает пользователю:

http://localhost:/Permission/NoAccess

но проблема начинает возникать, когда я перезагружаю свой проект, а затем пользователь перенаправляется на:

http://localhost:/Views/Permission/NoAccess.aspx

и я получаю ошибку: ресурс не найден.

слегка растерян, почему он работает один раз, а потом перезагружается после перезагрузки? какие-либо предложения? Может быть, я должен перенаправить с помощью другого метода?

с использованием IIS express, visual studio 2010, MVC2

1 Ответ

0 голосов
/ 27 января 2011

Это похоже на неприятную особенность Visual Studio ...

Если у вас открыто представление NoAccess.aspx в Visual Studio, а затем нажмите клавишу F5, Visual Studio открывает Internet Explorer с URL-адресом http:/localhost:11111/Views/Permission/NoAccess.aspx,Этот URL может работать для классического приложения ASP.NET, но не для приложений ASP.NET MVC.И это в основном ошибка в Visual Studio и, конечно, не в вашем приложении.

Если вы откроете файл .cs и нажмете F5, Visual Studio запустит Internet Explorer с URL http:/localhost:11111/.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...