Réponse.RedirectToRoute avec une action spécifiée
Je souhaite rediriger vers une route, mais également spécifier l'action à exécuter sur cette route du contrôleur.
J'ai essayé ceci:
Response.RedirectToRoute("Login", new { action = "ChangePassword" });
L'action ressemble à ceci:
public ActionResult ChangePassword()
{}
La route ressemble à ceci:
routes.MapRoute("Login", "Login/{action}", new { controller = "Login",
action = "Index" } );
L'erreur que j'obtiens est :
Système.NotImplementedException: La méthode ou l'opération n'est pas mis en œuvre.
Pouvez-vous voir ce que je fais mal?
C'est un bug dans MVC3. @ajay_whiz la solution a fonctionné pour moi.
OriginalL'auteur | 2010-01-08
Vous devez vous connecter pour publier un commentaire.
J'ai aussi eu un moment difficile avec ce. J'ai fait ce
où voulez-vous accès?
Application_Error
. Il est bien évidemment possible de créer une nouvelle instance, la question de savoir si une instance statique existe partout autour.vous pouvez utiliser
UrlHelper.GenerateUrl()
méthode. Pour obtenir RequestContext vous pouvez écrire((MvcHandler)HttpContext.Current.Handler).RequestContext
Hommes vous sauver ma journée (y)
OriginalL'auteur ajay_whiz
Bien, vous obtenez seulement
NotImplementedException
quand quelque chose se jette sur elle. Regardez donc la trace de la pile (Pile d'Appel) et de trouver la routine qui l'a jeté. Quand VS automatiquement implémente une interface, par exemple, le corps va se débarrasser de cette; vous êtes attendus pour remplacer la mise en œuvre.Si IE RedirectToRoute est de lancer l'exception de droite?
Non,
RedirectToRoute
de ne pas jeter ce. Mais la chose quiRedirectToRoute
provoque éventuellement être (par exemple, une fonction appelée par votre action) pourrait. Essayez de regarder un tapis sur uneInnerException
que vous pourriez avoir.Je ne crois pas que l'action est jamais appelé parce que je peux manuellement rendez-vous sur l'URL de l'action et de son amende. Je pense que le problème est w/ mon appel à RedirectToRoute(). Je pense qu'il ne trouve pas la route ou quelque chose. Je ne comprends juste pas pourquoi. L'action elle-même est le travail parfait. Le RouteRedirect est là que je suis confus.
blog.slaks.net/2011/11/...
OriginalL'auteur Craig Stuntz
OriginalL'auteur SpoiledTechie.com