Gunakan filerersult untuk memuat turun fail jenis yang tidak diketahui di asp.net mvc
Apabila memuat turun fail di ASP.NET MVC, biasanya disyorkan untuk menggunakan fileresult sebagai kaedah pilihan. Walau bagaimanapun, kebanyakan contoh dimuat turun oleh fail imej dengan jenis kandungan tertentu (seperti "imej/jpeg").
Jika jenis fail tidak diketahui dan anda ingin membenarkan pengguna memuat turun pelbagai format fail, akan ada masalah: nama fail yang dimuat turun mungkin disambungkan dari laluan fail dengan garis bawah, yang mungkin tidak sesuai. Di samping itu, sesetengah orang lebih suka kembali ke Fileresult dan bukannya menggunakan kelas tersuai, seperti "BinaryContentrsult".
kaedah yang disyorkan
Untuk menyelesaikan masalah ini dan merealisasikan mekanisme muat turun yang betul, sila ikuti langkah -langkah di bawah:
Gunakan jenis mime yang dijalankan oleh lapan -bit bytespete sejagat: -
Untuk fail yang tidak diketahui, tentukan jenis mime "aplikasi/oktet-stream" umum untuk menunjukkan bahawa fail itu boleh menjadi sebarang format.
Operasi muat turun definisi:
Dalam pengawal MVC anda, buat kaedah operasi untuk memproses muat turun fail, contohnya: -
carian fail byte:
<code class="language-csharp">public FileResult Download(string filePath, string fileName)
{
// 从指定位置或流获取文件字节
byte[] fileBytes = GetFileBytes(filePath);
// 使用指定的字节、MIME类型和文件名返回FileResult
return File(fileBytes, System.Net.Mime.MediaTypeNames.Application.Octet, fileName);
}</code>
Salin selepas log masuk
kaedah untuk mendapatkan bait fail berdasarkan menyediakan laluan fail atau kaedah lain, seperti:
-
Kod Contoh:
Ini adalah serpihan kod sampel yang menunjukkan kaedah ini: <code class="language-csharp">private byte[] GetFileBytes(string filePath)
{
return System.IO.File.ReadAllBytes(filePath);
}</code>
Salin selepas log masuk
Melalui kaedah ini, anda boleh memuat turun mana -mana jenis fail, sambil mengekalkan nama fail yang diperlukan dan menggunakan jenis MIME yang sesuai dalam aplikasi ASP.NET MVC anda. Atas ialah kandungan terperinci Bagaimana Mengendalikan Muat Turun Fail Jenis Tidak Diketahui dalam ASP.NET MVC menggunakan FileResult?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!