bonsoir,
aujourd'hui j'essaie de faire passer un objet typé par la méthode Post de jquery.
mon model :
mon code jquery :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace myPortfolio.Areas.admin.Models { public class SkillModel { public Guid Id { get; set; } public string Name { get; set; } } }
mon code asp.net :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 var data = { pictures: [ { Id: '67f64a95-45cc-40bb-ac81-6247e4105953', Url: '1.png', Main: false }, { Id: '4841f169-1b5b-47cc-9f79-e31b71d67d12', Url: '2.png', Main: false }, { Id: 'af3d3aea-5f6c-4c4d-93b5-bed09cbfb4fc', Url: '3.png', Main: false } ] }; json = JSON.stringify(data); $.post("/admin/ManageProject/SaveArticle/", json);
grace a un point d'arret, je vois que mon paramètre "pictures" n'est pas détecté comme étant une liste, il ne contient aucune ligne, il est totallement null. c'est la première fois que je fais ça, j'ai lu pas mal de chose sur le net, et je pensais que ça allait se faire tout seul. apparemment il y a un binder par défaut O_o.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 [ValidateInput(false)] [AcceptVerbs(HttpVerbs.Post)] [HttpPost] public void SaveArticle(IList<PhotoModel> pictures) { ... }
Où ai-je commis une erreur ?
merci![]()
Partager