全部博文(116)
分类:
2005-08-31 09:02:31
...
byte[] content = ReadBitmap2ByteArray(fileName);
StoreBlob2DataBase(content);
...
protected static byte[] ReadBitmap2ByteArray(string fileName)
{
using(Bitmap image = new Bitmap(fileName))
{
MemoryStream stream = new MemoryStream();
image.Save(stream, System.Drawing.Imaging.ImageFormat.Bmp);
return stream.ToArray();
}
}
protected static void StoreBlob2DataBase(byte[] content)
{
SqlConnection con = Connection;
con.Open();
try
{
// insert new entry into table
SqlCommand insert = new SqlCommand(
"insert into Images ([stream]) values (@image)",con);
SqlParameter imageParameter =
insert.Parameters.Add("@image", SqlDbType.Binary);
imageParameter.Value = content;
imageParameter.Size = content.Length;
insert.ExecuteNonQuery();
}
finally
{
con.Close();
}
}
-------------------------------------------------------------------------------
protected static void StoreBlob2DataBaseOleDb(byte[] content)
{
try
{
using(OleDbConnection con = Connection)
{
con.Open();
// insert new entry into table
using(OleDbCommand insert = new OleDbCommand(
"insert into Images ([stream]) values (?)",con))
{
OleDbParameter imageParameter =
insert.Parameters.Add("@image", OleDbType.Binary);
imageParameter.Value = content;
imageParameter.Size = content.Length;
insert.ExecuteNonQuery();
}
}
}
catch(Exception ex)
{
// some exception processing
}
}
-----------------------------------------------------------------------------
// get image
DataRowView drv = (DataRowView) _cm.Current;
byte[] content = (byte[])drv["stream"];
MemoryStream stream = new MemoryStream(content);
Bitmap image = new Bitmap(stream);
ShowImageForm f = new ShowImageForm();
f._viewer.Image = image;
f.ShowDialog(this);