C# ASP.NET 如何上传图片进数据库 ? 我用的是VS2010。
如何把图片传到数据库,然后该怎么显示出来?我数据库字段名为“图片”数据类型image把图片放到这个字段里面,然后取出来的时候放到页面的Image1这个控件里面。新手,希望...
如何把图片传到数据库,然后该怎么显示出来?
我数据库字段名为 “图片” 数据类型 image
把图片放到这个字段里面,然后取出来的时候放到页面的 Image1 这个控件里面。
新手,希望各位高手不吝啬教教,直接给我代码就好,我自己理解!谢谢哈! 展开
我数据库字段名为 “图片” 数据类型 image
把图片放到这个字段里面,然后取出来的时候放到页面的 Image1 这个控件里面。
新手,希望各位高手不吝啬教教,直接给我代码就好,我自己理解!谢谢哈! 展开
4个回答
展开全部
在得到图片的时候自己写一个方法将图片转化成二进制流的形式存入数据库:
private byte[] ConvertPicture()
{
string path = FileUpload1.FileName //记录图片所在的路径
byte[] byteImage = null; // 初始化一个字节数组储存图片
FileStream FStream = new FileStream(path , FileMode.Open, FileAccess.Read); //将图片以文件流的形式进行保存
BinaryReader BReader = new BinaryReader(FStream);
byteImage = BReader.ReadBytes((int)FStream.Length);
BReader.Close();
FStream.Close();
return byteImage;
}
在数据库中读取出二进制流的图片:
byte[] bytes = model.EmployeeImage;
MemoryStream ms = new MemoryStream(bytes);
System.Drawing.Image img = System.Drawing.Image.FromStream(ms);
this.Image1 = img;
private byte[] ConvertPicture()
{
string path = FileUpload1.FileName //记录图片所在的路径
byte[] byteImage = null; // 初始化一个字节数组储存图片
FileStream FStream = new FileStream(path , FileMode.Open, FileAccess.Read); //将图片以文件流的形式进行保存
BinaryReader BReader = new BinaryReader(FStream);
byteImage = BReader.ReadBytes((int)FStream.Length);
BReader.Close();
FStream.Close();
return byteImage;
}
在数据库中读取出二进制流的图片:
byte[] bytes = model.EmployeeImage;
MemoryStream ms = new MemoryStream(bytes);
System.Drawing.Image img = System.Drawing.Image.FromStream(ms);
this.Image1 = img;
展开全部
我不建议将图片存到数据库中,
一般我们的做法都是将图片存到本地或者序列化到本地某个文件夹,
然后数据库中存这个图片的路径!
一般我们的做法都是将图片存到本地或者序列化到本地某个文件夹,
然后数据库中存这个图片的路径!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
string name = FileUpload1.PostedFile.FileName;
string type=name .Substring (name .LastIndexOf (".")+1);
FileStream fs = File.OpenRead(name);
byte[] content=new byte [fs.Length];
fs.Read(content, 0, content.Length);
fs.Close();
SqlConnection cn = new SqlConnection("server=.;uid=sa;pwd=****;database=za");
SqlCommand cm = new SqlCommand("insert into myimage(imagedata) values(@imagedata)",cn);
cn.Open();
if (type == "jpg" || type == "gif" || type == "bmp" || type == "png")
{
cm.Parameters.Add("@imagedata", SqlDbType.Image);
cm.Parameters["@imagedata"].Value = content;
cm.ExecuteNonQuery();
cn.Close();
}
string type=name .Substring (name .LastIndexOf (".")+1);
FileStream fs = File.OpenRead(name);
byte[] content=new byte [fs.Length];
fs.Read(content, 0, content.Length);
fs.Close();
SqlConnection cn = new SqlConnection("server=.;uid=sa;pwd=****;database=za");
SqlCommand cm = new SqlCommand("insert into myimage(imagedata) values(@imagedata)",cn);
cn.Open();
if (type == "jpg" || type == "gif" || type == "bmp" || type == "png")
{
cm.Parameters.Add("@imagedata", SqlDbType.Image);
cm.Parameters["@imagedata"].Value = content;
cm.ExecuteNonQuery();
cn.Close();
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
先转换成二进制
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询