Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Menyimpan Imej dalam Pangkalan Data menggunakan C#?

Bagaimana untuk Menyimpan Imej dalam Pangkalan Data menggunakan C#?

Barbara Streisand
Lepaskan: 2025-01-03 00:48:39
asal
579 orang telah melayarinya

How to Save Images in a Database using C#?

Menyimpan Imej dalam Pangkalan Data menggunakan C#

Apabila menyimpan imej pengguna dalam pangkalan data, adalah penting untuk menukarnya kepada format binari yang serasi dengan penyimpanan pangkalan data. Dalam C#, anda boleh mencapainya melalui langkah berikut:

  1. Buat Tatasusunan Bait untuk Data Imej:
    Tukar imej pengguna kepada tatasusunan bait. Langkah ini melibatkan membaca fail imej menggunakan kelas Fail atau Imej dan menyimpannya sebagai tatasusunan bait.
  2. Gunakan Pertanyaan Berparameter dengan Data Perduaan:
    Untuk mencegah serangan suntikan SQL dan menambah baik prestasi, gunakan pertanyaan berparameter dengan parameter jenis DbType.Binary. Parameter ini akan menyimpan tatasusunan bait yang mewakili data imej.
  3. Lakukan Pertanyaan untuk Menyimpan Imej:
    Laksanakan pertanyaan berparameter untuk memasukkan data imej ke dalam pangkalan data. Data binari akan disimpan dalam lajur yang ditentukan, mengekalkan maklumat imej.

Kod Contoh:

using System.Drawing;
using System.Drawing.Imaging;
using System.Data;

public static void SaveImage(string path, IDbConnection connection)
{
    using (var command = connection.CreateCommand())
    {
        // Read the image file and convert it to a byte array
        Image img = Image.FromFile(path);
        MemoryStream tmpStream = new MemoryStream();
        img.Save(tmpStream, ImageFormat.Png);
        tmpStream.Seek(0, SeekOrigin.Begin);
        byte[] imgBytes = new byte[MAX_IMG_SIZE];
        tmpStream.Read(imgBytes, 0, MAX_IMG_SIZE);

        // Create a binary parameter for the image data
        command.CommandText = "INSERT INTO images(payload) VALUES (:payload)";
        IDataParameter par = command.CreateParameter();
        par.ParameterName = "payload";
        par.DbType = DbType.Binary;
        par.Value = imgBytes;
        command.Parameters.Add(par);

        // Execute the query to save the image
        command.ExecuteNonQuery();
    }
}
Salin selepas log masuk

Kod ini menunjukkan cara menukar imej kepada tatasusunan bait, cipta parameter binari dan laksanakan pertanyaan berparameter untuk menyimpan data imej dalam pangkalan data menggunakan C#.

Atas ialah kandungan terperinci Bagaimana untuk Menyimpan Imej dalam Pangkalan Data menggunakan C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan