效果如上
using
System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.OleDb;
using System.IO;
using System.Net ;
namespace WebApplication2
{
/**//// <summary>
/// Summary description for ImageGrid.
/// </summary>
public class ImageGrid : System.Web.UI.Page
{
protected System.Web.UI.HtmlControls.HtmlInputFile File1;
protected System.Web.UI.WebControls.Button btnsave;
protected System.Web.UI.WebControls.TextBox txtUserName;
protected System.Web.UI.WebControls.Label Label3;
protected System.Web.UI.WebControls.Button Del;
protected System.Web.UI.WebControls.DataGrid DataGrid1;
private void Page_Load(object sender, System.EventArgs e)
{
if (!this.IsPostBack)
{
Data_Bind();
}
}
GetDataSet#region GetDataSet
private DataSet GetDataSet(string sql)
{
string constring=System.Configuration.ConfigurationSettings.AppSettings[0];
OleDbDataAdapter sda =new OleDbDataAdapter(sql,constring);
DataSet ds=new DataSet();
sda.Fill(ds);
return ds;
}
#endregion
DataBind#region DataBind
private void Data_Bind()
{ string sql="";
if (getIPAddress ()=="10.34.76.100")
{
sql="select * from [file] order by id desc ";
}
else
{
sql="select * from [file] where ip='"+getIPAddress ()+"' order by id desc ";
}
DataSet ds=GetDataSet(sql);
this.DataGrid1.DataSource=ds;
this.DataGrid1.DataBind();
}
#endregion
#region
public void del(int id)
{
string sql="delete * from [file] where id="+id;
System.Data .OleDb .OleDbConnection cnn=new System.Data.OleDb.OleDbConnection (System.Configuration.ConfigurationSettings.AppSettings[0]);
System.Data .OleDb .OleDbCommand odc=new OleDbCommand (sql,cnn);
cnn.Open ();
odc.ExecuteNonQuery ();
cnn.Close();
}
#endregion
FormatImage#region FormatImage
protected string FormatImage(object obj)
{
return "ReadImage.aspx?UserID=" + obj.ToString();
}
#endregion
Web Form Designer generated code#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/**//// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.btnsave.Click += new System.EventHandler(this.btnsave_Click);
this.Del.Click += new System.EventHandler(this.Del_Click);
this.DataGrid1.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.DataGrid1_PageIndexChanged);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
btnsave_Click#region btnsave_Click
private void btnsave_Click(object sender, System.EventArgs e)
{
string Path=File1.PostedFile.FileName;// 文件名称
int Size = File1.PostedFile.ContentLength; // 文件大小
string Type = File1.PostedFile.ContentType;// 文件类型
Stream ImageStream = File1.PostedFile.InputStream;
byte[] Content = new byte[Size];
int Status = ImageStream.Read(Content, 0, Size);
// 写入数据库
System.Data .OleDb .OleDbConnection cnn=new System.Data.OleDb.OleDbConnection (System.Configuration.ConfigurationSettings.AppSettings[0]);
System.Data .OleDb .OleDbCommand comm=new OleDbCommand("insert into [file]([name],filevalue,uptime,Type,realtype,ip) values(@UserName,@Image,@Path,@Type,@realtype,@ip)",cnn);
comm.CommandType = CommandType.Text;
comm.Parameters.Add("@name", OleDbType.VarChar, 255).Value = txtUserName.Text;
comm.Parameters.Add("@filevalue",OleDbType.Binary ).Value = Content;
comm.Parameters.Add("@uptime", OleDbType.VarChar,50).Value = System.DateTime.Now.Date.ToString ("yyyy-MM-dd");
comm.Parameters.Add("@Type", OleDbType.VarChar, 50).Value = Type;
string abc=@File1.PostedFile .FileName ;
string temp=abc.Substring (abc.IndexOf ("."));
comm.Parameters .Add ("@realtype",OleDbType.VarChar,50).Value=temp;
comm.Parameters .Add ("@ip",OleDbType.VarChar ,50).Value=getIPAddress ();
cnn.Open ();
comm.ExecuteNonQuery();
cnn.Close();
Data_Bind();
}
#endregion
private void Del_Click(object sender, System.EventArgs e)
{
foreach(DataGridItem item in this.DataGrid1.Items)
{
CheckBox cb=(CheckBox)item.FindControl("select");
if (cb.Checked)
{
this.del( int.Parse (this.DataGrid1.DataKeys[item.ItemIndex].ToString ()));
}
}
Data_Bind();
}
private void DataGrid1_SelectedIndexChanged(object sender, System.EventArgs e)
{
}
private void DataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{
this.DataGrid1 .CurrentPageIndex =e.NewPageIndex ;
Data_Bind();
}
获取本机ip#region 获取本机ip
private static string getIPAddress ( )
{
System.Net.IPAddress addr;
// 获得本机局域网IP地址
addr = new System.Net.IPAddress ( Dns.GetHostByName (Dns.GetHostName ( ) ).AddressList [0].Address) ;
return addr.ToString ( ) ;
}
#endregion
}
}
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.OleDb;
using System.IO;
using System.Net ;
namespace WebApplication2
{
/**//// <summary>
/// Summary description for ImageGrid.
/// </summary>
public class ImageGrid : System.Web.UI.Page
{
protected System.Web.UI.HtmlControls.HtmlInputFile File1;
protected System.Web.UI.WebControls.Button btnsave;
protected System.Web.UI.WebControls.TextBox txtUserName;
protected System.Web.UI.WebControls.Label Label3;
protected System.Web.UI.WebControls.Button Del;
protected System.Web.UI.WebControls.DataGrid DataGrid1;
private void Page_Load(object sender, System.EventArgs e)
{
if (!this.IsPostBack)
{
Data_Bind();
}
}
GetDataSet#region GetDataSet
private DataSet GetDataSet(string sql)
{
string constring=System.Configuration.ConfigurationSettings.AppSettings[0];
OleDbDataAdapter sda =new OleDbDataAdapter(sql,constring);
DataSet ds=new DataSet();
sda.Fill(ds);
return ds;
}
#endregion
DataBind#region DataBind
private void Data_Bind()
{ string sql="";
if (getIPAddress ()=="10.34.76.100")
{
sql="select * from [file] order by id desc ";
}
else
{
sql="select * from [file] where ip='"+getIPAddress ()+"' order by id desc ";
}
DataSet ds=GetDataSet(sql);
this.DataGrid1.DataSource=ds;
this.DataGrid1.DataBind();
}
#endregion
#region
public void del(int id)
{
string sql="delete * from [file] where id="+id;
System.Data .OleDb .OleDbConnection cnn=new System.Data.OleDb.OleDbConnection (System.Configuration.ConfigurationSettings.AppSettings[0]);
System.Data .OleDb .OleDbCommand odc=new OleDbCommand (sql,cnn);
cnn.Open ();
odc.ExecuteNonQuery ();
cnn.Close();
}
#endregion
FormatImage#region FormatImage
protected string FormatImage(object obj)
{
return "ReadImage.aspx?UserID=" + obj.ToString();
}
#endregion
Web Form Designer generated code#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/**//// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.btnsave.Click += new System.EventHandler(this.btnsave_Click);
this.Del.Click += new System.EventHandler(this.Del_Click);
this.DataGrid1.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.DataGrid1_PageIndexChanged);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
btnsave_Click#region btnsave_Click
private void btnsave_Click(object sender, System.EventArgs e)
{
string Path=File1.PostedFile.FileName;// 文件名称
int Size = File1.PostedFile.ContentLength; // 文件大小
string Type = File1.PostedFile.ContentType;// 文件类型
Stream ImageStream = File1.PostedFile.InputStream;
byte[] Content = new byte[Size];
int Status = ImageStream.Read(Content, 0, Size);
// 写入数据库
System.Data .OleDb .OleDbConnection cnn=new System.Data.OleDb.OleDbConnection (System.Configuration.ConfigurationSettings.AppSettings[0]);
System.Data .OleDb .OleDbCommand comm=new OleDbCommand("insert into [file]([name],filevalue,uptime,Type,realtype,ip) values(@UserName,@Image,@Path,@Type,@realtype,@ip)",cnn);
comm.CommandType = CommandType.Text;
comm.Parameters.Add("@name", OleDbType.VarChar, 255).Value = txtUserName.Text;
comm.Parameters.Add("@filevalue",OleDbType.Binary ).Value = Content;
comm.Parameters.Add("@uptime", OleDbType.VarChar,50).Value = System.DateTime.Now.Date.ToString ("yyyy-MM-dd");
comm.Parameters.Add("@Type", OleDbType.VarChar, 50).Value = Type;
string abc=@File1.PostedFile .FileName ;
string temp=abc.Substring (abc.IndexOf ("."));
comm.Parameters .Add ("@realtype",OleDbType.VarChar,50).Value=temp;
comm.Parameters .Add ("@ip",OleDbType.VarChar ,50).Value=getIPAddress ();
cnn.Open ();
comm.ExecuteNonQuery();
cnn.Close();
Data_Bind();
}
#endregion
private void Del_Click(object sender, System.EventArgs e)
{
foreach(DataGridItem item in this.DataGrid1.Items)
{
CheckBox cb=(CheckBox)item.FindControl("select");
if (cb.Checked)
{
this.del( int.Parse (this.DataGrid1.DataKeys[item.ItemIndex].ToString ()));
}
}
Data_Bind();
}
private void DataGrid1_SelectedIndexChanged(object sender, System.EventArgs e)
{
}
private void DataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{
this.DataGrid1 .CurrentPageIndex =e.NewPageIndex ;
Data_Bind();
}
获取本机ip#region 获取本机ip
private static string getIPAddress ( )
{
System.Net.IPAddress addr;
// 获得本机局域网IP地址
addr = new System.Net.IPAddress ( Dns.GetHostByName (Dns.GetHostName ( ) ).AddressList [0].Address) ;
return addr.ToString ( ) ;
}
#endregion
}
}
using
System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.OleDb ;
namespace WebApplication2
{
/**//// <summary>
/// Summary description for ReadImage.
/// </summary>
public class ReadImage : System.Web.UI.Page
{
private void Page_Load(object sender, System.EventArgs e)
{
int UserID = Convert.ToInt32(Request["ID"]);
string sql="select * from file where ID="+UserID;
DataSet ds = GetDataSet(sql);
if (ds != null && ds.Tables[0].Rows.Count>0)
{
Response.Clear();
string Type=ds.Tables[0].Rows[0]["Type"].ToString();
string name=ds.Tables[0].Rows[0]["name"].ToString ();
Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");
Response.ContentType=Type;
string realtype=ds.Tables[0].Rows[0]["realtype"].ToString ();
name=Server.UrlEncode(name);
name=Server.UrlDecode(name);
Response.AddHeader("Content-Disposition", "attachment; filename="+System.Web.HttpUtility.UrlEncode(name)+""+realtype);
Response.BinaryWrite((byte[])ds.Tables[0].Rows[0]["filevalue"]);
Response.End();
}
}
GetDataSet#region GetDataSet
private DataSet GetDataSet(string sql)
{
string constring=System.Configuration.ConfigurationSettings.AppSettings[0];
OleDbDataAdapter sda =new OleDbDataAdapter(sql,constring);
DataSet ds=new DataSet();
sda.Fill(ds);
return ds;
}
#endregion
Web Form Designer generated code#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/**//// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.OleDb ;
namespace WebApplication2
{
/**//// <summary>
/// Summary description for ReadImage.
/// </summary>
public class ReadImage : System.Web.UI.Page
{
private void Page_Load(object sender, System.EventArgs e)
{
int UserID = Convert.ToInt32(Request["ID"]);
string sql="select * from file where ID="+UserID;
DataSet ds = GetDataSet(sql);
if (ds != null && ds.Tables[0].Rows.Count>0)
{
Response.Clear();
string Type=ds.Tables[0].Rows[0]["Type"].ToString();
string name=ds.Tables[0].Rows[0]["name"].ToString ();
Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");
Response.ContentType=Type;
string realtype=ds.Tables[0].Rows[0]["realtype"].ToString ();
name=Server.UrlEncode(name);
name=Server.UrlDecode(name);
Response.AddHeader("Content-Disposition", "attachment; filename="+System.Web.HttpUtility.UrlEncode(name)+""+realtype);
Response.BinaryWrite((byte[])ds.Tables[0].Rows[0]["filevalue"]);
Response.End();
}
}
GetDataSet#region GetDataSet
private DataSet GetDataSet(string sql)
{
string constring=System.Configuration.ConfigurationSettings.AppSettings[0];
OleDbDataAdapter sda =new OleDbDataAdapter(sql,constring);
DataSet ds=new DataSet();
sda.Fill(ds);
return ds;
}
#endregion
Web Form Designer generated code#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/**//// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}
上这代码大多不是我写的,只是改了 cnblogs 一位网友的...
http://singlepine.cnblogs.com/articles/288027.html
他是输出一个图片,我是要下载这个文件