J'ai un objet JSON comme ceci:Impossible de transmettre la valeur de date à la méthode du contrôleur via la méthode jquery post.
var data = {};
data =
{ "First" : _this.getFirstElement.val(),
"Second": _this.getSecondElement.val(),
"DateProperty" : _this.getDatePropertyElement.val()
};
Ceci est transmis à la méthode de commande à l'aide post jquery:
$.post(url,data,function(){somefunction});
Ma méthode de commande est comme ceci:
[HttpPost]
public void ControllerMethod(TestObject data)
{
// data.DateProperty is coming as null
// logic
}
Qu'est-ce que Ai-je manqué?
Le FormData passé quand on les regarde dans la section réseau de navigateur spécifie données:
FormData :
First : <some data>
Second : <some data>
DateProperty : some long date string
Plus tard j'ai changé les données JSON envoyer date JSON.stringify()
maintenant dans le formData, la valeur vient comme
First : <some data>
Second : <some data>
DateProperty : "05/06/16"
Mais toujours à la méthode du contrôleur, dateProperty est null?
Ce que vous avez décrit devrait fonctionner correctement. Êtes-vous sûr que le nom de propriété de 'DateProperty' correspond à ce qui est défini dans le modèle C#? –
@RoryMcCrossan - oui. La propriété est la même côté C#. – SunilA
J'ai eu une observation étrange - quand je hardcode la valeur des données de publication du navigateur et définissez la dateProperty comme "09/07/10". Il a donné une valeur de date correcte au contrôleur. – SunilA