Heim >Datenbank >MySQL-Tutorial >Wie kann ich Bilder mit C# in einer Datenbank beibehalten?
Datenpersistenz von Bildern in Datenbanken mit C#
Das Speichern von Benutzerbildern in einer Datenbank ist eine häufige Aufgabe in Webanwendungen. C# bietet robuste Mechanismen, um diese Funktionalität zu erreichen.
Bilddaten kodieren
Um ein Bild in einer Datenbank zu speichern, muss es in ein Binärformat konvertiert werden. Dazu gehört die Erstellung einer Byte-Array-Darstellung der Bilddaten. Zu diesem Zweck können verschiedene Bildformate wie PNG, JPEG oder BMP verwendet werden.
Datenbankintegration
Sobald die Bilddaten in binärer Form vorliegen, ist dies möglich in einer Datenbank gespeichert. Die meisten modernen RDBMS unterstützen das Speichern von Binärdaten. Der Datentyp zum Speichern eines Bildes ist normalerweise BLOB (Binary Large OBject) oder BINARY.
Speichern in der Datenbank
Um die Bilddaten in der Datenbank zu speichern, a Es wird eine Abfrage mit einem Parameter für die Bilddaten verwendet. Der Parameterdatentyp sollte mit dem Datentyp der Spalte in der Datenbank übereinstimmen, in der das Bild gespeichert wird.
Beispielcode
Der folgende Codeausschnitt zeigt die Schritte zum Speichern eines Bild in eine Datenbank in 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(); }
Durch die Implementierung dieser Schritte können Entwickler Benutzerbilder effektiv in einer Datenbank in C# speichern Anwendungen.
Das obige ist der detaillierte Inhalt vonWie kann ich Bilder mit C# in einer Datenbank beibehalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!