HTTPPost ne fonctionne pas, asp net mvc 3
Je suis vraiment confus,
voici le code :
[HttpPost]
public ActionResult Settings(string SubmitButton)
{
if (SubmitButton == "Sign In") {
ServiceLocator.Current.GetInstance<IAppContext>().LoggedUser = null;
Response.Cookies["loginuser"].Expires = DateTime.Now;
return RedirectToAction("Logon", "Account");
}
if (SubmitButton == "Sign Up") { return RedirectToAction("register", "Account"); }
if (SubmitButton == "Change Default Ride Settings") { return RedirectToAction("changeSettings", "Home"); }
return View();
}
Le point de vue de contenir
<% using (Html.BeginForm()) { %>
Three input ,
<% } %>
le contrôleur n'est pas tiré avec httppost mais tiré avec httpget
OriginalL'auteur Khaldoun | 2011-03-09
Vous devez vous connecter pour publier un commentaire.
Vous avez probablement besoin de passer dans le contrôleur et les noms d'action en Html.BeginForm() de votre point de vue. Depuis le [HttpPost] Paramètres() est invoquée pour les requêtes HTTP get, ce qui implique qu'il n'y a pas d'autre Paramètres() pour les requêtes get, donc je suppose que votre vue est servi à partir d'une autre action. Dans un tel cas, vous devez définir explicitement le contrôleur et l'action dans votre code Html.BeginForm(). Essayez ceci:
pourriez-vous s'il vous plaît partager ur réponse, je suis aussi à l'aide de JQUeryMobile et aux prises avec le même problème,dans mon cas RedirectToAction de la Méthode d'ouverture de session ne fonctionne pas et la barre d'adresse de collier avec le signe # et adresse de redirection désemparés...
OriginalL'auteur Johnny Oshika
Vous devez générer un formulaire html avec l'attribut method post si vous voulez un post:
OriginalL'auteur m0sa
Il devrait y avoir de l'action avec le nom de l'Index() et ne contenant tous les paramètres. C'est le problème que j'ai rencontré.
OriginalL'auteur
J'ai utilisé ActionName() pour résoudre le même problème,
Pas de code de travail:
Code de travail:
OriginalL'auteur Shabnam
Le bon chemin à l'aide de rasoir
OriginalL'auteur amesh