Maison > développement back-end > C++ > Comment passer des modèles complexes dans les données de forme pour les applications MVC?

Comment passer des modèles complexes dans les données de forme pour les applications MVC?

Mary-Kate Olsen
Libérer: 2025-02-02 21:46:14
original
896 Les gens l'ont consulté

How Can I Pass Complex Models in Form Data for MVC Applications?

passant des formulaires de modèle complexe dans l'application MVC

Dans l'application MVC, la transmission du modèle en tant que données de formulaire dans le cadre des données de formulaire peut apporter des défis, en particulier lors du traitement de l'ensemble du modèle entier. Cet article résout ce problème en fournissant une solution complète.

Défi: la sérialisation du modèle en javascript

Lorsque vous essayez d'utiliser pour attacher le modèle aux données de formulaire dans les données de formulaire en JavaScript, le modèle est généralement sérialisé sous forme de chaîne, résultant en une représentation "

".

formdata.append("model", model) Solution: FormData Serialization [object object]

Afin de surmonter ce problème, veuillez utiliser la fonction de construction FormData comme suit le modèle de sérialisation:

Cette méthode sérialisera automatiquement les modèles et tout fichier généré par élément

.

var formdata = new FormData($('form').get(0));
Copier après la connexion
<表> a publié les données de formulaire sur le contrôleur

<input type="file">

Utilisez Ajax pour publier des données de formulaire sérialisées au contrôleur:

Sur le côté du contrôleur, définissez une opération pour recevoir les données de formulaire:

Si votre modèle n'inclut pas
$.ajax({
  url: '@Url.Action("YourActionName", "YourControllerName")',
  type: 'POST',
  data: formdata,
  processData: false,
  contentType: false,         
});
Copier après la connexion
Attributs, veuillez utiliser l'opération suivante Large lourde:

[HttpPost]
public ActionResult YourActionName(YourModelType model)
{
}
Copier après la connexion
<添> Ajouter d'autres attributs

HttpPostedFileBase

Si nécessaire, vous pouvez utiliser les méthodes suivantes pour attacher d'autres attributs aux données du formulaire:
[HttpPost]
public ActionResult YourActionName(YourModelType model, HttpPostedFileBase myImage)
{
}
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal