【发布时间】:2016-10-06 09:54:02
【问题描述】:
我一直在做一个指纹项目。下面的代码可以将指纹图像转换为字节数组,但是如果你拿三个人的指纹来说,将提交的值是相同的值,它不是唯一的。它应该是每个人唯一的,因为我们需要用它来验证每个人。任何帮助将不胜感激。
public void btnSave_Click(object sender, EventArgs e)
{
@fname = txtfname.Text;
@lname = txtlname.Text;
byte[] @img1 = Encoding.UTF8.GetBytes(Convert.ToString(pictureBox1.Image));
con = new SqlConnection(@"Data Source=DESKTOP-400N4CL;Initial Catalog=test;Integrated Security=True");
con.Open();
cmd = new SqlCommand("INSERT INTO dbo.fingerp " + " (fname,lname,finprint) " + " VALUES(@fname,@lname,@img1)", con);
cmd.Parameters.AddWithValue("@fname", txtfname.Text);
cmd.Parameters.AddWithValue("@lname", txtlname.Text);
cmd.Parameters.AddWithValue("@img1", @img1);
cmd.ExecuteNonQuery();
MessageBox.Show("Your details is captured successfully");
////txtfname.Text = "";
txtlname.Text = "";
pictureBox1.Image = null;
}
【问题讨论】:
-
只有相同的图像才会相同。为什么 3 个不同的人会使用同一张图片 3 次?
-
Convert.ToString(pictureBox1.Image)不获取图像数据 - 这就是为什么这些值都是相同的,因为它们基于字符串“System.Drawing.Bitmap” -
注意:您可能低估了比较指纹所涉及的逻辑。
标签: c# sql-server