首頁 >資料庫 >mysql教程 >如何使用 C# 將影像持久保存在資料庫中?

如何使用 C# 將影像持久保存在資料庫中?

DDD
DDD原創
2025-01-04 12:45:41371瀏覽

How Can I Persist Images in a Database Using C#?

使用C# 實作資料庫中影像的資料持久化

在資料庫中保存使用者影像是Web 應用程式中的常見任務。 C# 提供了強大的機制來實現此功能。

編碼影像資料

要將影像儲存在資料庫中,必須將其轉換為二進位格式。這涉及創建圖像資料的位元組數組表示。各種影像格式,如 PNG、JPEG 或 BMP 都可用於此目的。

資料庫整合

一旦影像資料為二進位形式,就可以儲存到資料庫。大多數現代 RDBMS 支援儲存二進位資料。儲存影像的資料類型通常是 BLOB(二進位大物件)或 BINARY。

儲存到資料庫

要將影像資料儲存到資料庫,使用具有影像資料參數的查詢。參數資料類型應與資料庫中儲存影像的資料列的資料類型相符。

範例程式碼

以下程式碼片段示範了保存影像所涉及的步驟將影像儲存到C# 資料庫中:

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

public static void SaveImage(string path, IDbConnection connection)
{
    using var command = connection.CreateCommand();
    
    Image img = Image.FromFile(path);
    var tmpStream = new MemoryStream();
    img.Save(tmpStream, ImageFormat.Png);
    tmpStream.Seek(0, SeekOrigin.Begin);
    
    var imgBytes = new byte[16777216];
    tmpStream.Read(imgBytes, 0, 16777216);
    
    command.CommandText = "INSERT INTO images(payload) VALUES (:payload)";
    var par = command.CreateParameter();
    par.ParameterName = "payload";
    par.DbType = DbType.Binary;
    par.Value = imgBytes;
    command.Parameters.Add(par);
    command.ExecuteNonQuery();
}

透過實作這些步驟,開發人員可以有效地將使用者影像儲存到C# 資料庫中應用程式。

以上是如何使用 C# 將影像持久保存在資料庫中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn