Maison >base de données >tutoriel mysql >Comment puis-je conserver des images dans une base de données à l'aide de C# ?
Persistance des données des images dans des bases de données à l'aide de C#
L'enregistrement des images utilisateur dans une base de données est une tâche courante dans les applications Web. C# fournit des mécanismes robustes pour réaliser cette fonctionnalité.
Encodage des données d'image
Pour stocker une image dans une base de données, elle doit être convertie au format binaire. Cela implique la création d’une représentation sous forme de tableau d’octets des données d’image. Différents formats d'image tels que PNG, JPEG ou BMP peuvent être utilisés à cet effet.
Intégration de base de données
Une fois les données d'image sous forme binaire, elles peuvent être enregistré dans une base de données. La plupart des SGBDR modernes prennent en charge le stockage des données binaires. Le type de données pour stocker une image est généralement BLOB (Binary Large OBject) ou BINARY.
Enregistrement dans la base de données
Pour enregistrer les données de l'image dans la base de données, un une requête avec un paramètre pour les données d’image est utilisée. Le type de données du paramètre doit correspondre au type de données de la colonne de la base de données qui stockera l'image.
Exemple de code
L'extrait de code suivant montre les étapes impliquées dans l'enregistrement d'un image dans une base de données en 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(); }
En mettant en œuvre ces étapes, les développeurs peuvent enregistrer efficacement les images des utilisateurs dans une base de données en C# candidatures.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!