WinForm怎么把图片通过PictureBox添加到数据库中啊???求救~~~~~~ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 MemoryStream ms = new MemoryStream(); picturebox1.Image.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg); ms.Dispose(); cmd.parameters[0].Value = ms.ToArray(); 你要把图片先转换成二进制,然后存到数据库的varbinary(max)字段。在存的时候用sql param形式举个例子:public static void SavePhoto(string userName, string passWord, Image image) { string sql = "INSERT INTO PIMUser(UserName, Password, UserPhoto) values(@UserName, @Password, @UserPhoto)"; SqlParameter[] param = new SqlParameter[3]; param[0] = new SqlParameter("@UserName", SqlDbType.NVarChar,32); param[0].Value = userName; param[1] = new SqlParameter("@Password", SqlDbType.VarChar,32); param[1].Value = passWord; param[2] = new SqlParameter("@UserPhoto",SqlDbType.VarBinary); param[2].Value = ImageToGZip(image); SqlConnection conn = new SqlConnection(); conn.ConnectionString = ConfigurationManager.AppSettings["connString"]; SqlCommand commd = new SqlCommand(sql, conn); commd.Parameters.Add(param[0]); commd.Parameters.Add(param[1]); commd.Parameters.Add(param[2]); try { conn.Open(); commd.ExecuteNonQuery(); } catch (Exception ex) { throw ex; } finally { conn.Close(); } } 方法一:存图片路径,缺点是当用户把图片搞走了,或神马的图片坏了就显示不出来了,优点是不会给带来数据库负担方法二:二进制存数据库,缺点是会使数据库变的很大,如果是access数据库的话不建议存二进制,优点是图片不会被损坏~ datagridview单元格计算 有没有朋友做过股票软件吗 DataGridView里的行,可以编辑,怎么让他不能修改怎么看? Repeater控件显示数据相关问题(急) 如何向一个未激活的窗体发送键盘事件 winform的下拉列表的Item能不能同时包含Value和Text值? 如何实现一个程序只有一个像一张白纸一样的页面 急!.Net 中開制做winForm自定議控件時如何得到父窗口的顏色 多线程调试这么麻烦, 郁闷, 你们都是怎么作的? 什么意思,能不能帮我解释一下:) 请问一个问题 急用 C#编程新手求师帖
MemoryStream ms = new MemoryStream();
picturebox1.Image.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
ms.Dispose();
cmd.parameters[0].Value = ms.ToArray();
在存的时候用sql param形式举个例子:
public static void SavePhoto(string userName, string passWord, Image image)
{
string sql = "INSERT INTO PIMUser(UserName, Password, UserPhoto) values(@UserName, @Password, @UserPhoto)";
SqlParameter[] param = new SqlParameter[3];
param[0] = new SqlParameter("@UserName", SqlDbType.NVarChar,32);
param[0].Value = userName;
param[1] = new SqlParameter("@Password", SqlDbType.VarChar,32);
param[1].Value = passWord;
param[2] = new SqlParameter("@UserPhoto",SqlDbType.VarBinary);
param[2].Value = ImageToGZip(image); SqlConnection conn = new SqlConnection();
conn.ConnectionString = ConfigurationManager.AppSettings["connString"]; SqlCommand commd = new SqlCommand(sql, conn);
commd.Parameters.Add(param[0]);
commd.Parameters.Add(param[1]);
commd.Parameters.Add(param[2]); try
{
conn.Open();
commd.ExecuteNonQuery();
}
catch (Exception ex)
{
throw ex;
}
finally
{
conn.Close();
}
}
方法二:二进制存数据库,缺点是会使数据库变的很大,如果是access数据库的话不建议存二进制,优点是图片不会被损坏~