asp.net 如何上传正反面身份证图片到数据库

图片说明
各位大神指教一下,给点详细代码可以吗

5个回答

就是上传图片呀,把图片以十进制的格式存入数据库。可以参考部分代码

 使用三层完成
1.从数据库读取图片,直接通过网格控件的DataSource绑定显示即可
DataTable dt = new DataTable();
DataHelp.OpenConn();
string sql = "select * from t_image";
SqlDataAdapter da = new SqlDataAdapter(sql, DataHelp.conn);
da.Fill(dt);
dataGridView1.DataSource = dt;

2.添加图片到数据库中
string sql = "insert into 表名 values(@id,@name,@image)";
//实例化Command对象
SqlCommand comm = new SqlCommand(sql,DataHelp.conn);
//实例化参数
 SqlParameter pimage = new SqlParameter("@image", SqlDbType.VarBinary);
//将参数添加到命令对象
。。。。
//为图片参数赋值          
//创建文件流,从本地读取图片
FileStream fs = new FileStream(filepath, FileMode.Open, FileAccess.Read);
//创建字节数组
Byte[] bs = new byte[fs.Length];
//将图片读到bs中
fs.Read(bs, 0, (int)fs.Length);
//给参数赋值
pimage.Value = bs;

3.点击控件显示对应的图片
第一种方式
//使用ImageConverter类实现图片转换
private ImageConverter convert = new ImageConverter();
Image img = (Image)convert.ConvertFrom(this.dataGridView1[e.ColumnIndex, e.RowIndex].Value);
dataGridView1.Rows[1].Cells[3].value
//将图片显示到控件
PictureBox1.Image=img;

第二种方式
//将图片读到字节数组
 byte[] byteimg = (byte[])ds.Tables[0].Rows[dataGrid1.CurrentRowIndex][2];
//创建内存流,读取图片
MemoryStream stream = new MemoryStream(byteimg);
this.pictureBox1.Image = Image.FromStream(stream);

4.从本地磁盘显示图片到控件
openFileDialog1.ShowDialog();
string filename = openFileDialog1.FileName ;
pictureBox1.Image = Image.FromFile(filename);

是二进制,上面失误了。



将图片以二进制流的方式整体上传到数据库里,读取显示时,以二进制流的方式整体读出。这种方法虽然麻烦一点,但保存的图片整体到了数据库里。这样主机变更时不会导致图片丢失。
数据库:Wxqcs_User
字段:Photo Imgae null
上传页面源码:



答案就在这里:ASP.NET上传图片到数据库
----------------------Hi,地球人,我是问答机器人小S,上面的内容就是我狂拽酷炫叼炸天的答案,除了赞同,你还有别的选择吗?

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐