Passer du Modèle De Contrôleur à l'aide de Jquery/Ajax

Je suis en train de passer mon modèle d'un contrôleur à l'aide de JQuery/Ajax, je ne suis pas sûr de savoir comment le faire correctement. Jusqu'à présent j'ai essayé d'utiliser Url.Action mais le modèle est vide.

Remarque: aucun des threads en double sur stackoverflow semblent adresse à l'aide de ASP.NET 5 MVC 6.

Vue:

$("#inpDateCompleted").change(function () {
        var url = '@(Url.Action("IndexPartial", "DashBoard", Model, null))';
        $("#DailyInvoiceItems").load(url);
});

Contrôleur:

 [HttpGet]
 public PartialViewResult IndexPartial(DashBoardViewModel m)
 {
      //Do stuff with my model
      return PartialView("_IndexPartial");
 }
C'est un peu pas clair ce que vous essayez de faire. Le 3e paramètre de votre Url.Action() serait le modèle d'origine lors de la première généré le point de vue, et si votre modèle contient des propriétés qui sont des objets complexes ou de collection, il serait tout de toute façon ne.
Cela ne ferait que passer le modèle d'origine (Url.Action() est rasoir code qui est interprété sur le serveur avant de son envoyé à la vue). Si votre seul vouloir envoyer la date sélectionnée à la méthode, utilisez $("#DailyInvoiceItems").load('@(Url.Action("IndexPartial", "DashBoard")', { date: $(yourdatecontrol).val()); }); et de modifier la méthode pour avoir un DateTime date paramètre.
Vous pouvez utiliser $('form').serialize() pour sérialiser tous les contrôles de formulaire. par exemple, $.post('@(Url.Action("IndexPartial", "DashBoard"), $('form').serialize()`, function(data) { $("#DailyInvoiceItems").html(data); });
C'est ce que $('form').serialize() fera. Votre DashBoardViewModel m paramètre est correctement lié (en supposant que vous avez généré, vous les contrôles de formulaire correctement)
Eh bien cela signifie que vous devriez vraiment être à l'aide d'un modèle de vue (j'.e ne contenant que les propriétés dont vous avez besoin dans la vue), mais non, toutes les propriétés que vous exclure sera juste leur valeur par défaut dans la méthode.

OriginalL'auteur Reafidy | 2015-11-26