“Enfant, les actions ne sont pas autorisées à effectuer une redirection actions”
J'ai cette erreur:
Erreur lors de l'exécution enfant demande pour de gestionnaire du Système.Web.Mvc.HttpHandlerUtil+ServerExecuteHttpHandlerAsyncWrapper'.
à l'intérieur d'exception:
Enfant les actions ne sont pas autorisées à effectuer une redirection actions.
Une idée de pourquoi cela se produit?
D'ailleurs, l'erreur se passe sur cette ligne:
@Html.Action("Menu", "Navigation")
Le Menu Action de la manette de Navigation ressemble à ceci:
public ActionResult Menu()
{
return PartialView();
}
Vous pouvez regarder cette question stackoverflow.com/questions/2056421/...
OriginalL'auteur Sachin Kainth | 2012-01-19
Vous devez vous connecter pour publier un commentaire.
Ce n'est pas permis parce que MVC a déjà commencé le Rendu de la Vue dans le navigateur (client).
De sorte que le MVC Cadres des blocs de cela, parce que le client reçoit déjà des données (html). Tant que le rendu est en cours, vous pas en mesure de rediriger les à votre enfant de voir.
Vous pouvez retourner
RedirectToAction
à la place.You can return RedirectToAction instead
?? confus..J'ai essayé beaucoup de solutions pour obtenir une mesure auth de fonctionnement du filtre et enfin compris que mon point de vue a été d'appeler
@Html.Action()
au lieu de@Url.Action()
ce dernier vous donne une url pour le lien et l'ancien exécute une action de contrôleur de rendu c'est afficher à la place. Très frustrant, assurez-vous que vous ne faites pas cette erreurJe suis à l'aide de RedirectToAction dans mon contrôleur, mais il me donne toujours l'erreur
OriginalL'auteur dknaack
Ce qui m'est arrivé parce que j'ai eu [RequireHttps] sur le Contrôleur, et un enfant d'action a été appelé à partir d'un autre contrôleur. Le RequireHttps attribut de l'origine de la redirection
OriginalL'auteur Doug
Au lieu de
Utilisation
Fonctionné pour moi 🙂
OriginalL'auteur Dumisani
Ma solution:
1)Créé personnalisé Contrôleur de l'Usine. Il est nécessaire pour obtenir ControllerContext dans mon custom https attribut.
2)Dans Application_Start fonction de Global.asax fichier a écrit suivant:
3)personnalisés Définis par https attribut:
4)à l'Aide de nouveaux attributs pour la définition de compte contrôleur:
[CustomRequireHttps]
OriginalL'auteur Taras Pelenio
de redirection comme ce
au lieu de
OriginalL'auteur Kazem
supprimer le [NoDirectAccess] annotation si elle est ajoutée dans le contrôleur.
et de contrôleur de la vue partielle
retour PartialView() au lieu de return View()
OriginalL'auteur Bhushan Shimpi