本文将介绍Asp.Net将图片保存到数据库中,并绑定GridVIew在页面上显示的实例,实例代码如下:【源码下载】
Default5.aspx前台页面

Default5.aspx前台页面Default5.aspx.cs页面

Default5.aspx.cs页面代码
using ...System;
using System.Collections.Generic;
using System.Data;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;


/**//// <summary>
/// 来源于.Net中文社区www.aspxcs.net/
/// </summary>
public partial class Default5 : System.Web.UI.Page
...{
protected void Page_Load(object sender, EventArgs e) 
...{
if (!Page.IsPostBack) 
...{
BindGV();
}
}
string strCnn = "User ID=sa;Password=123456;database=Book;Server=(local);";
protected void Button1_Click(object sender, EventArgs e) 
...{
System.IO.Stream fileDataStream = FileUpload1.PostedFile.InputStream;
if (fileDataStream.Length < 1) 
...{
Msg.Text = "请选择文件。";
return;
}
//得到文件大小
int fileLength = FileUpload1.PostedFile.ContentLength;
//创建数组
byte[] fileData = new byte[fileLength];
//把文件流填充到数组
fileDataStream.Read(fileData, 0, fileLength);
//得到文件类型
string fileType = FileUpload1.PostedFile.ContentType;
//构建数据库连接,SQL语句,创建参数
SqlConnection myConnection = new SqlConnection(strCnn);
SqlCommand command = new SqlCommand("INSERT INTO UserPhoto (UserName,ContentType,Photo)" +
"VALUES (@UserName,@ContentType,@Photo)", myConnection);
command.Parameters.AddWithValue("@UserName", TextBox1.Text);
command.Parameters.AddWithValue("@ContentType", fileType);
command.Parameters.AddWithValue("@Photo", fileData);
//打开连接,执行查询
myConnection.Open();
command.ExecuteNonQuery();
myConnection.Close();
Response.Redirect(Request.RawUrl);
}
private void BindGV() 
...{
SqlConnection myConnection = new SqlConnection(strCnn);
SqlCommand myCommand = new SqlCommand("SELECT * FROM UserPhoto Order By id DESC", myConnection);
try 
...{
myConnection.Open();
GridView1.DataSource = myCommand.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
GridView1.DataBind();
}
catch (Exception SQLexc) 
...{
Response.Write("提取数据时出现错误:" + SQLexc.ToString());
}
}
protected string FormatURL(object strArgument) 
...{
return "ReadImage.aspx?id=" + strArgument.ToString();
}
}显示图片ReadImage.aspx代码:

ReadImage.aspx前台页面ReadImage.aspx.cs后台代码:

ReadImage.aspx.cs后台代码
using ...System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class ReadImage : System.Web.UI.Page 
...{ 
/**//// <summary>
/// 来源于.Net中文社区www.aspxcs.net/
/// </summary>
protected void Page_Load(object sender, EventArgs e) 
...{
//构建数据库连接,SQL语句,创建参数
string strCnn = "User ID=sa;Password=123456;database=book;Server=(local)";
SqlConnection myConnection = new SqlConnection(strCnn);
SqlCommand command = new SqlCommand("select * from UserPhoto Where id="+Request.QueryString["id"], myConnection);
myConnection.Open();
SqlDataReader dr = command.ExecuteReader();
if (dr.Read()) 
...{
Response.Clear();
Response.AddHeader("Content-Type", dr["ContentType"].ToString());
Response.BinaryWrite((byte[])dr["Photo"]);
}
dr.Close();
myConnection.Dispose();
}
}创建SQL数据表语句

创建SQL数据表语句最终效果预览: