Utiliser C# pour stocker des images dans une base de données
Le stockage des images des utilisateurs dans une base de données est une tâche courante dans le développement Web. En C#, il existe plusieurs façons d’aborder cela. Une méthode consiste à convertir l'image en un tableau d'octets et à l'enregistrer dans un champ de base de données de type octet.
Solution :
Pour mettre en œuvre cette approche, vous pouvez utiliser le méthode suivante :
using System.Drawing; using System.Drawing.Imaging; using System.Data; public static void PerisitImage(string path, IDbConnection connection) { using (var command = connection.CreateCommand ()) { Image img = Image.FromFile (path); MemoryStream tmpStream = new MemoryStream(); img.Save (tmpStream, ImageFormat.Png); // change to other format tmpStream.Seek (0, SeekOrigin.Begin); byte[] imgBytes = new byte[MAX_IMG_SIZE]; tmpStream.Read (imgBytes, 0, MAX_IMG_SIZE); 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); command.ExecuteNonQuery (); } }
Dans cette méthode :
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!