Maison > développement back-end > C++ > Comment renvoyer efficacement les fichiers pour afficher ou télécharger dans ASP.NET MVC?

Comment renvoyer efficacement les fichiers pour afficher ou télécharger dans ASP.NET MVC?

DDD
Libérer: 2025-01-31 14:03:09
original
705 Les gens l'ont consulté

How to Efficiently Return Files for Viewing or Downloading in ASP.NET MVC?

rationaliser les téléchargements et les vues des fichiers dans ASP.net MVC

Gestion des téléchargements de fichiers et des aperçus dans les applications ASP.NET MVC peut présenter des complexités. Cet article explore des stratégies efficaces pour le retour des fichiers stockés dans une base de données, offrant une solution robuste pour surmonter les obstacles courants.

L'approche FileStreamResult, bien que fonctionnelle pour de nombreux types de fichiers, ne fait pas face à des extensions inconnues ou à nécessiter des téléchargements forcés. L'utilisation de FileDownloadName force un téléchargement, en contournant la manipulation automatique du navigateur.

Une solution supérieure utilise la classe ContentDispositionHeaderValue (dans les versions MVC ASP.NET modernes) pour contrôler précisément le comportement des fichiers. Cela permet aux développeurs de spécifier si un fichier doit être affiché en ligne ou téléchargé directement.

Voici un exemple en utilisant ASP.NET Core:

<code class="language-csharp">public IActionResult Download()
{
    Document document = ... // Retrieve document from database

    var cd = new ContentDispositionHeaderValue("attachment")
    {
        FileNameStar = document.FileName
    };
    Response.Headers.Add(HeaderNames.ContentDisposition, cd.ToString());

    return File(document.Data, document.ContentType);
}</code>
Copier après la connexion

En manipulant FileNameStar et des propriétés associées, vous obtenez un contrôle à grain fin sur les invites de visualisation en ligne par rapport aux invites de téléchargement. Cette méthode gère également gracieusement les noms de fichiers contenant des caractères internationaux.

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!

source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal