.net怎么保存图片到数据库中?

解决方案 »

  1.   

    保存:
    protected void btnUpload_Click1(object sender, EventArgs e)
        {
            SqlConnection con = new SqlConnection(Sql);
            con.Open();
            FileStream fs = File.Open(this.File1.PostedFile.FileName, FileMode.Open);
            byte[] by = new byte[fs.Length];
            fs.Read(by, 0, (int)fs.Length);
            String SqlCmd = "insert into ImageStore(ImageData,ImageContentType,ImageDescription,ImageSize) values(@Image,@fileType,@fileDec,@fileSize)";
            SqlCommand CmdObj = new SqlCommand(SqlCmd, con);
            CmdObj.Parameters.Add("@Image", SqlDbType.Image, (int)fs.Length).Value = by;
            CmdObj.Parameters.Add("@fileType", SqlDbType.VarChar, 20).Value = this.File1.PostedFile.ContentType;
            CmdObj.Parameters.Add("@fileDec", SqlDbType.VarChar, 200).Value = this.txtDescript.Text;
            CmdObj.Parameters.Add("@fileSize", SqlDbType.BigInt).Value = this.File1.PostedFile.ContentLength;
            fs.Close();
            CmdObj.ExecuteNonQuery();
            dataGridBind();    }
      

  2.   

    SqlConnection conn = new SqlConnection(@"data source=.;uid=sa;pwd=;database=master");  
                conn.Open();  
                SqlCommand cmd = new SqlCommand("select image1 from image", conn);  
                SqlDataReader reader = cmd.ExecuteReader();  
                while (reader.Read())  
                {  
                     MemoryStream buf = new MemoryStream((byte[])reader[0]);  
                     Image image = Image.FromStream(buf,true);  
                     this.pictureBox1.Image = image;  
                }  自己对着修改修改吧
      

  3.   

    protected void Unnamed1_Click(object sender, EventArgs e)
        {
            string Sql = ConfigurationManager.ConnectionStrings["conn"].ConnectionString;
            SqlConnection con = new SqlConnection(Sql);
            con.Open();
            
            //FileStream fs = File.Open(Server.MapPath( "img/"+ this.FileUpload1.PostedFile.FileName), FileMode.Open);
            //byte[] by = new byte[fs.Length];
            //fs.Read(by, 0, (int)fs.Length);
            string SqlCmd = "insert into ImageStore(ImageData,ImageContentType,ImageDescription,ImageSize) values(@Image,@fileType,@fileDec,@fileSize)";
            SqlCommand comobj = new SqlCommand(SqlCmd, con);
            comobj.Parameters.Add("@Image", SqlDbType.Image).Value = this.FileUpload1.FileBytes;
            comobj.Parameters.Add("@fileType", SqlDbType.VarChar, 20).Value = this.FileUpload1.PostedFile.ContentType;
            comobj.Parameters.Add("@fileDec", SqlDbType.VarChar, 200).Value = this.TextBox1.Text;
            comobj.Parameters.Add("@fileSize", SqlDbType.BigInt).Value = this.FileUpload1.PostedFile.ContentLength;
            
            comobj.ExecuteNonQuery();
            con.Close();
        }
    对二楼的代码进一步改进希望能给你有所帮助,这里涉及到前台的一个上传控件和textbox