Maison >développement back-end >C++ >Comment télécharger les fichiers Excel générés côté serveur via AJAX dans MVC?
Génération et téléchargement de fichiers Excel dans MVC en utilisant Ajax
Le téléchargement directement un fichier Excel via un appel AJAX dans MVC n'est pas possible. Au lieu de cela, utilisez Ajax pour envoyer des données au serveur, qui génère ensuite le fichier Excel.
Étape 1: Création de fichiers Excel côté serveur
Utiliser des bibliothèques comme Epplus ou NPOI pour créer le fichier Excel sur le serveur à l'aide des données reçues de la demande AJAX.
Étape 2: renvoyer les informations du fichier au client
Après la génération de fichiers, renvoyez le chemin ou le nom du fichier à la fonction de réussite de l'appel ajax.
Étape 3: déclencher le téléchargement en javascript
Dans le rappel JavaScript success
, redirigez le navigateur vers une URL qui sert le fichier, initiant le téléchargement.
Ajax Exemple
<code class="language-javascript">$.ajax({ type: 'POST', url: '/Reports/ExportMyData', data: JSON.stringify({ dataprop1: "test", dataprop2: "test2" }), contentType: 'application/json; charset=utf-8', dataType: 'json', success: function(returnValue) { window.location = '/Reports/Download?file=' + returnValue; } });</code>
Action du contrôleur (téléchargement de fichiers)
<code class="language-csharp">[HttpGet] public virtual ActionResult Download(string file) { string fullPath = Path.Combine(Server.MapPath("~/MyFiles"), file); return File(fullPath, "application/vnd.ms-excel", file); }</code>
Cette méthode garantit un téléchargement de fichiers Excel fluide déclenché par une demande AJAX sans interférer avec la fonctionnalité du formulaire côté client.
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!