将图片写入数据库并显示出来

来源:互联网 发布:东莞java培训机构排名 编辑:程序博客网 时间:2024/04/28 05:16
using System;using System.Web;using System.IO;using System.Data;using System.Data.SqlClient;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.HtmlControls;namespace UploadImage{public class UploadImage:Page{protected HtmlInputFile up_file;protected TextBox txtDescription;protected Label txtMessage;protected Int32 fileLength=0;protected void Button_Submit(System.Object sender,System.EventArgs e){HttpPostedFile UpFile=up_file.PostedFile;fileLength=UpFile.ContentLength;try{if(fileLength==0){txtMessage.Text="<b>请你选择你要上传的文件</b>";}else{Byte[] FileByteArray=new Byte[fileLength];Stream StreamObject=UpFile.InputStream;StreamObject.Read(FileByteArray,0,fileLength);SqlConnection Con=new SqlConnection("Data Source=Localhost;Initial Catalog=DBImages;uid=sa;pwd=;");string SqlCmd="insert into image(ImageData,ImageContentType,ImageDescription,ImageSize)values(@Image,@ContentType,@ImageDescription,@ImageSize)";SqlCommand CmdObj=new SqlCommand(SqlCmd,Con);CmdObj.Parameters.Add("@Image",SqlDbType.Binary,fileLength).Value=FileByteArray;CmdObj.Parameters.Add("@ContentType",SqlDbType.VarChar,50).Value=UpFile.ContentType;CmdObj.Parameters.Add("@ImageDescription",SqlDbType.VarChar,200).Value=txtDescription.Text;CmdObj.Parameters.Add("@ImageSize",SqlDbType.BigInt,8).Value=UpFile.ContentLength;Con.Open();CmdObj.ExecuteNonQuery();Con.Close();txtMessage.Text="<p><b>OK!你已经成功上传你的图片</b>";}}catch(Exception ex){txtMessage.Text=ex.Message.ToString();}}}}______________________________________________________________________________________________using System;using System.Data;using System.Data.SqlClient;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.HtmlControls;namespace ReadImage{public class MainDisplay:System.Web.UI.Page{void Page_Load(System.Object sender,System.EventArgs e){int ImgID=Convert.ToInt32(Request.QueryString["ImgID"]);SqlConnection Con=new SqlConnection("Data Source=localhost;Initial Catalog=DBImages;uid=sa;pwd=;");string SqlCmd="select * from image where ";SqlCommand CmdObj=new SqlCommand(SqlCmd,Con);CmdObj.Parameters.Add("@ImageID",SqlDbType.Int).Value=ImgID;Con.Open();SqlDataReader SqlReader=CmdObj.ExecuteReader();if(SqlReader.Read()){Response.ContentType=(string)SqlReader["ImageContentType"];Response.BinaryWrite((byte[])SqlReader["ImageData"]);}Con.Close();}}}