Post de plusieurs paramètres MVC Contrôleur à l'aide de C#
Je suis l'affichage d'un objet json pour une ASP.Net MVC contrôleur de code C#. Pour garder les choses simples dans cet exemple, l'objet est tout simplement une voiture avec la marque et le modèle de propriétés. Tout fonctionne bien avec le code ci-dessous. Ma question est - comment puis-je publier plusieurs paramètres? Par exemple, comment pourrais-je poster un objet JSON, une adresse email et un numéro de téléphone?
//post to form
string requestData = "{\"Make\":\"Ford\",\"Model\":\"Mustang\"}";
byte[] data = Encoding.UTF8.GetBytes(requestData);
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://receiving.url/showdata");
request.Method = "POST";
request.ContentType = "application/json";
Stream dataStream = request.GetRequestStream();
dataStream.Write(data, 0, data.Length);
dataStream.Close();
WebResponse response = request.GetResponse();
string result = new StreamReader(response.GetResponseStream()).ReadToEnd();
Console.Write(result);
Ici, c'est le Contrôleur de code qui récupère l'objet json de la poste, et puis les sorties au format json à des fins de vérification.
[HttpPost]
public JsonResult showdata(Car c)
{
return Json(c, JsonRequestBehavior.AllowGet);
}
Je cherche à faire quelque chose comme ceci:
[HttpPost]
public JsonResult showdata(Car c, string email, string phone)
{
return Json(c, JsonRequestBehavior.AllowGet);
}
OriginalL'auteur Aquaboltar | 2011-07-08
Vous devez vous connecter pour publier un commentaire.
Comme ceci:
Ou encore mieux, à l'aide d'un JavascriptSerializer:
qui va prendre en charge correctement la sérialisation JSON votre objet si vous utilisez ces concaténations de chaîne de votre demande peut se casser facilement si les données contiennent des caractères spéciaux.
Oh, et avant que j'oublie: utiliser des modèles de vue.
Ainsi, au lieu de:
vous devriez certainement avoir:
et puis:
Et une autre remarque: vous n'avez pas besoin
JsonRequestBehavior.AllowGet
lors du retour de votre JSON que vous avez décoré votre contrôleur de l'action avec[HttpPost]
si cette action ne peut être invoquée avec un verbe GET.OriginalL'auteur Darin Dimitrov
Il n'est pas un problème, vous faire demander comme:
ASP.NET MVC Json cartable doit être assez intelligent pour bing qui correctement pour la méthode, comme:
OriginalL'auteur Alexander Beletsky