Memaparkan Imej Pangkalan Data dengan Cekap dalam Model ASP.NET MVC
Dalam aplikasi ASP.NET MVC, memaparkan imej yang disimpan sebagai tatasusunan bait dalam pangkalan data anda adalah keperluan yang kerap. Walau bagaimanapun, berulang kali mengakses pangkalan data untuk mendapatkan dan memaparkan imej ini boleh memberi kesan kepada prestasi. Artikel ini menunjukkan kaedah yang lebih cekap.
Memaparkan Imej Tatasusunan Bait Secara Terus
Anda boleh terus memaparkan imej daripada tatasusunan bait dalam model anda, menghapuskan keperluan untuk pertanyaan pangkalan data berulang. Ini dicapai dengan menukar tatasusunan bait kepada rentetan Base64 dan membenamkannya terus ke dalam atribut src
tag imej.
Menukar Tatasusunan Byte kepada Rentetan Base64
Kaedah Convert.ToBase64String
memudahkan penukaran ini. Ia menerima tatasusunan bait dan mengembalikan setara Base64.
Memberikan Imej dalam Paparan anda
Coretan kod Razor berikut menunjukkan cara untuk memaparkan imej menggunakan rentetan Base64:
<code class="language-csharp">@{ var base64 = Convert.ToBase64String(Model.ImageBytes); var imgSrc = $"data:image/jpeg;base64,{base64}"; // Adjust 'image/jpeg' as needed } <img src="@imgSrc" alt="Image from Database" /></code>
Kod ini menukar tatasusunan bait (Model.ImageBytes
) kepada rentetan Base64 dan membina pembolehubah imgSrc
. Awalan data:image/jpeg;base64
menentukan jenis imej (laraskan mengikut keperluan; pilihan biasa termasuk image/png
, image/gif
). Ingat untuk menggantikan Model.ImageBytes
dengan nama harta sebenar dalam model anda.
Pertimbangan Penting:
Walaupun kaedah ini menawarkan kelebihan prestasi, pertimbangkan perkara berikut:
image/jpeg
, image/png
) dalam URL data:
. Tersalah menyatakan jenis akan menghalang imej daripada dipaparkan.Pendekatan yang dioptimumkan ini menyediakan cara yang lebih bersih dan lebih cekap untuk memaparkan imej yang disimpan sebagai tatasusunan bait dalam aplikasi ASP.NET MVC anda. Ingat untuk menyesuaikan kod supaya sepadan dengan struktur model dan jenis imej khusus anda.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memaparkan Imej daripada Tatasusunan Byte dalam Model MVC ASP.NET Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!