Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk mengembalikan fail untuk melihat atau memuat turun di ASP.NET MVC?

Bagaimana untuk mengembalikan fail untuk melihat atau memuat turun di ASP.NET MVC?

Linda Hamilton
Linda Hamiltonasal
2025-01-31 14:11:10809semak imbas

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

kembali fail dalam ASP.NET MVC untuk melihat atau memuat turun

Dalam ASP.NET MVC, mengembalikan fail yang disimpan dalam pangkalan data kepada pengguna boleh membawa cabaran. Matlamatnya adalah untuk menyediakan dua pilihan: mimetype yang ditentukan oleh penyemak imbas dilihat oleh penyemak imbas untuk melihat fail dan memaksa fail muat turun oleh pelayar, tanpa mengira jenis fail.

pilihan pemprosesan fail

Kelas FileStreamResult biasanya digunakan untuk menghantar fail. Walau bagaimanapun, ia tidak dapat menentukan nama fail secara lalai, yang akan membawa kepada tingkah laku yang tidak dijangka apabila berurusan dengan pengembangan fail yang tidak diketahui. Nama fail yang ditentukan boleh membuat penyemak imbas tidak dapat membuka fail secara langsung.

Untuk menyelesaikan masalah ini, kita boleh menggunakan kelas ContentDisposition dan menetapkan harta nama fail ke nama sebenar dokumen. Di samping itu, tetapkan harta sebaris untuk palsu untuk meminta penyemak imbas untuk memuat turun fail dan bukannya cuba membukanya.

Contoh kod

Berikut adalah pelaksanaan contoh dalam Core ASP.NET (Rangka Kerja Lengkap).

Dengan menggunakan kelas ContentDispositionHeadervalue, kita dapat memastikan bahawa watak -watak antarabangsa dalam nama fail dikendalikan dengan betul. Kaedah ini membolehkan melihat dan memuat turun fail, dan menentukan tingkah laku yang diperlukan berdasarkan perdana pelayar.
<code class="language-csharp">public ActionResult Download()
{
    Document document = ...; // 获取文件数据
    var cd = new ContentDispositionHeaderValue("attachment")
    {
        FileNameStar = document.FileName // 使用 FileNameStar 属性处理文件名中的特殊字符
    };
    Response.Headers.Add(HeaderNames.ContentDisposition, cd.ToString());

    return File(document.Data, document.ContentType); // 返回文件数据和内容类型
}</code>

Atas ialah kandungan terperinci Bagaimana untuk mengembalikan fail untuk melihat atau memuat turun di ASP.NET MVC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn