asp.net上传图片保存到数据库的代码

  数据库:保存图片的数据格式 图象二进制数据储存字段

  前台:

  

复制代码 代码如下:

  <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="UploadWork.aspx.cs" Inherits="meishuguan.UploadWork" %>

  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

  <html xmlns="http://www.w3.org/1999/xhtml">

  <head runat="server">

  <title></title>

  <style type="text/css">

  .style1

  {

  width: 100%;

  }

  .style2

  {

  height: 25px;

  }

  </style>

  </head>

  <body>

  <script type="text/javascript">

  function checkData() {

  var fileName = document.getElementById("UploadImage").value;

  alert(fileName);

  //var fileName = document.getElementsByName("UploadImage").value;

  if (fileName == "")

  return;

  var exName = fileName.substr(fileName.lastIndexOf(".") + 1).toUpperCase();

  //alert(exName)

  if (exName == "JPG" || exName == "BMP" || exName == "GIF") {

  var imgpath = fileName.src;

  alert(imgpath);

  document.getElementById("PreviewImage").src = imgpath;

  document.write(fileName);

  }

  else {

  alert("请选择正确的图片文件")

  document.getElementById("PreviewImage").value = ""

  }

  }

  </script>

  <form method="post" runat="server">

  <div>

  <table class="style1">

  <tr>

  <td class="style2">

  <asp:Label ID="MessageLabel" runat="server"></asp:Label>

  </td>

  <td class="style2">

  </td>

  </tr>

  <tr>

  <td class="style2">

  <input id="UploadImage" name = "UploadImage" type="file" runat="server" onchange="checkdata()" />

  </td>

  <td class="style2">

  <img id="PreviewImage" alt="" src="" style="height: 80px; width: 80px" /></td>

  </tr>

  <tr>

  <td>

  <asp:Button ID="UploadButton" runat="server" Text="确定" OnClick="UploadButton_Click" />

  </td>

  <td>

  </td>

  </tr>

  </table>

  </div>

  </form>

  </body>

  </html>

  后台:

  

复制代码 代码如下:

  using System;

  using System.Collections.Generic;

  using System.Web;

  using System.Web.UI;

  using System.Web.UI.WebControls;

  using System.IO;

  using System.Data.SqlClient;

  using System.Configuration;

  namespace meishuguan

  {

  public partial class UploadWork : System.Web.UI.Page

  {

  protected void Page_Load(object sender, EventArgs e)

  {

  }

  protected void UploadButton_Click(object sender, EventArgs e)

  {

  HttpPostedFile UpFile = UploadImage.PostedFile;

  int ImageLength = UpFile.ContentLength;

  if (ImageLength == 0)

  {

  MessageLabel.Text = "请选择要上传的图片";

  return;

  }

  if (ImageLength > Int32.Parse(Application["MaxImageLength"].ToString()))

  {

  MessageLabel.Text = "图片大小不能大于2M";

  return;

  }

  Stream ImageStream = UpFile.InputStream;

  Byte[] ImageByte = new Byte[ImageLength];

  ImageStream.Read(ImageByte, 0, ImageLength);

  SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ToString());

  string sqlstring = "insert into [Work](MID,image,length) values(@MID,@image,@length)";

  SqlCommand command = new SqlCommand(sqlstring, connection);

  command.Parameters.Add("@MID", System.Data.SqlDbType.Int).Value = Session["MID"].ToString();

  command.Parameters.Add("@image", System.Data.SqlDbType.Image, ImageLength).Value = ImageByte;

  command.Parameters.Add("@length", System.Data.SqlDbType.Int).Value = ImageLength;

  connection.Open();

  command.ExecuteNonQuery();

  connection.Close();

  MessageLabel.Text = "图片上传成功";

  }

  }

  }