Gravar como binário
30/11/2011
0
O que preciso é o seguinte:
Tenho esse código:
protected void btnSave_Click(object sender, EventArgs e)
{
ms = new MemoryStream(fupTravel.FileBytes); Bitmap map = System.Drawing.Image.FromStream(ms) as Bitmap; System.Drawing.Image thumbnail = new Bitmap(300, 250); System.Drawing.Graphics graphic = System.Drawing.Graphics.FromImage(thumbnail); graphic.DrawImage(map, 0, 0, 300, 250); thumbnail.Save(HttpContext.Current.Server.MapPath(@ + fupTravel.FileName), System.Drawing.Imaging.ImageFormat.Jpeg);string str = txtTravel.Text; byte[] bytPhoto = fupTravel.FileBytes; insertImage(str,bytPhoto); }
Pega uma imagem em qualquer tamanho e coverte para uma imagem de 300 x 250px, Certo.
Preciso pegar a imagem tratada pelo MemoryStream e passa-la para ser gravada no banco de dados:
byte[] bytPhoto = Imagem tratada pelo MemoryStream em tamanho 300 x 250 pixelsDai passa-la para gravar aqui:
private void insertImage(string strTravel, byte[] imgTravel)
{
using(SqlConnection con = new SqlConnection(_connectionString) )
{
string sql = INSERT INTO DEV_TRAVEL (TRAVEL, TRAVEL_IMAGE) VALUES (@travel,@image);
SqlCommand cmd = new SqlCommand(sql,con);
cmd.CommandType = CommandType.Text;
//Initialize parameters
cmd.Parameters.AddWithValue(@travel, SqlDbType.VarChar).Value = strTravel;
cmd.Parameters.AddWithValue(@image, SqlDbType.VarBinary).Value = imgTravel;
con.Open();
cmd.ExecuteNonQuery();
}
}
}
Como faço isso?
Grato
Dirceu Azevedo
Posts
30/11/2011
Fabio Rosa
Talvez este link te ajude:
http://www.dotnetperls.com/memorystream
Att.
01/12/2011
Flavia Santos
Porque você não cria um diretório para as imagens, e ao invés de gravá-las no banco, você gravaria o caminho onde ela está salva?
Isso não lhe ajudaria?
Clique aqui para fazer login e interagir na Comunidade :)