问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C# ASP.NET 如何上传图片进数据库 ? 我用的是VS2010。

发布网友 发布时间:2022-04-13 06:55

我来回答

5个回答

懂视网 时间:2022-04-13 11:17

图片通过asp.net上传到mysql数据库的方法

这是页面上的按钮单击事件
代码如下:

  protected void Button1_Click(object sender, EventArgs e)
  {
  string tid = Utils.getRandom(32);
  Stream mystream = this.FileUpload1.PostedFile.InputStream;
  int length = this.FileUpload1.PostedFile.ContentLength;
  byte[] pic = new byte[length];
  mystream.Read(pic, 0, length);
  bool flg = insert(tid, pic);
  }

  这是执行插入的方法
代码如下: 
 public bool insert(string tid,byte[] pic)
  {
  DBConn db = new DBConn();
  StringBuilder sql = new StringBuilder();
  sql.Append("insert into teacher(TID,TPHOTO,TDELETE) values (?tid,?pic,?flg)");
  int flg = 0;
  try
  {
  myConnection = db.getConnection();
  MySqlCommand myCommand = new MySqlCommand(sql.ToString(), myConnection);
  myCommand.Parameters.Add(new MySqlParameter("?tid", MySqlDbType.String, 32));
  myCommand.Parameters["?tid"].Value = tid;
  myCommand.Parameters.Add(new MySqlParameter("?pic", MySqlDbType.Blob));
  myCommand.Parameters["?pic"].Value = pic;
  myCommand.Parameters.Add(new MySqlParameter("?flg", MySqlDbType.Int16));
  myCommand.Parameters["?flg"].Value = 0;
  myConnection.Open();
  flg = myCommand.ExecuteNonQuery();
  }
  catch (Exception ex)
  {
  return false;
  }
  finally
  {
  if (myConnection != null)
  {
  myConnection.Close();
  }
  }
  if (flg > 0)
  {
  return true;
  }
  return false;
  }

热心网友 时间:2022-04-13 08:25

在得到图片的时候自己写一个方法将图片转化成二进制流的形式存入数据库:
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;

热心网友 时间:2022-04-13 09:43

我不建议将图片存到数据库中,
一般我们的做法都是将图片存到本地或者序列化到本地某个文件夹,
然后数据库中存这个图片的路径!

热心网友 时间:2022-04-13 11:17

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();
}

热心网友 时间:2022-04-13 13:09

先转换成二进制
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 年终会活动策划方案 深度解析:第一财经回放,探索财经新风向 逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 周杰伦的MTV哪里有下载啊??要全部的而且清晰的。(不要BT下载)谢谢!!!!!!!! 周杰伦MV下载 EXO所有的MV,百度云盘 高清MV网盘资源 飞轮海所有MV打包下载 哪位朋友那有经典老歌的高清晰MV下载地址?告诉下,谢谢了! 经典老歌的MTV哪儿下载? 谁有经典老歌MV打包下载的地址? ppt如何快速读懂诗歌 主播五五开与笑笑微博事件怎么回事 六间房倾城笑笑干嘛去了?咋不出来直播了 求分享王菲的《MV》mp3百度云网盘下载 齐齐笑笑怎么没直播了2016 齐齐互动里面的本色笑笑去哪儿了? 齐齐主播笑笑现在还直播吗有那直播,我晚上22:00在200300看咋没她直播了? 怎样阅读现代诗歌ppt 卢本伟笑笑到底怎么了?卢本伟到底是怎样的一个人? 抖音干货主播秦笑笑怎么不播了 什么叫社保基金 它与股票有什么关系?谢谢回答 全国社会保障基金理事会转持一户和社保基金有什么区别 饺子放多久不会坏,煮不破皮的方法 浦发银行我办了个手机银行每天最多一笔不超过几万 文华财经软件 什么语言编写 文华财经软件开发是基于java 语言还是c++语言? ASP.NET利用.FileUpload上传图片并将图片名称保存到数据库,我要具体的代码 通达信和文华财经里的公式属于什么程序语言,要编写交易程序如何入门。最好有着方面的教材 帮忙取个名字,2006年12月16日23:22出生,女孩,父亲姓刘,母亲姓张.谢谢啦,说一下理由 我的儿子是2006年10月26日10时20分出生的,我姓肖,请大家给他取个名字 2006年出生的女孩起什么名字好? 父亲沉迷炒股,当女儿的该怎么办? 帮忙给孩子取名字.生于农历2006年11月27号,下午2点,女孩,姓扈.望各位好朋友指点,谢谢了! 梦见死去的父亲和我一起炒股 2006年5月25日16:20北京出生 女孩,请帮忙取名字。 父亲沉迷股市? 文华财经编程什么配置的电脑可以? 我女儿2006年8月2日9点15分出生,姓张请大师给取个好名字 我想要我那不会炒股票的父亲炒股赚钱。 2006年11月15日 4:30出生取什么名字好? 农历2006年9月14出生,男孩,取什么名字 文华财经赢智中“带有资金函数的模型只能加载到数组,不能加载到主图”这句话是什么意思?