微软的DOTNET 101 例子有有源代码,去下载一个看看

解决方案 »

  1.   

    使用带参数sql语句:
    如insert into table1 (imageName)
    values(@buffer);
    其中@buffer的数据类型设定为SqlDbType.image;
    在程序中将图像读入一个byte[],然后将此数组赋值给buffer:@buffer.value=ByteArray;
    bytearray代表你使用的字节数组。最后执行上述sql即可
      

  2.   

    Stream imgdatastream = File1.PostedFile.InputStream;
    int imgdatalen = File1.PostedFile.ContentLength;
    string imgtype = File1.PostedFile.ContentType;
    string imgtitle = TextBox1.Text;
    byte[] imgdata = new byte[imgdatalen];
    int n = imgdatastream.Read(imgdata,0,imgdatalen);
    string connstr=((NameValueCollection)Context.GetConfig("appSettings"))["connstr"];SqlConnection connection = new SqlConnection(connstr);SqlCommand command = new SqlCommand
             ("INSERT INTO ImageStore(imgtitle,imgtype,imgdata)
             VALUES ( @imgtitle, @imgtype,@imgdata )", connection );SqlParameter paramTitle = new SqlParameter
             ("@imgtitle", SqlDbType.VarChar,50 );paramTitle.Value = imgtitle;
    command.Parameters.Add( paramTitle);SqlParameter paramData = new SqlParameter( "@imgdata", SqlDbType.Image );
    paramData.Value = imgdata;
    command.Parameters.Add( paramData );SqlParameter paramType = new SqlParameter( "@imgtype", SqlDbType.VarChar,50 );
    paramType.Value = imgtype;
    command.Parameters.Add( paramType );connection.Open();
    int numRowsAffected = command.ExecuteNonQuery();
    connection.Close();