【发布时间】:2022-01-12 04:24:00
【问题描述】:
我正在尝试从我的数据库中检索数据并使用文本更改将其设置为文本框和图片框。
这是我的代码:
private void textBox1_TextChanged(object sender, EventArgs e)
{
string sqlstring = "database = db_phonebook; user = root; password = ''; server = 'localhost'; SSL Mode = None";
MySqlConnection mysqlcon = new MySqlConnection(sqlstring);
MySqlCommand mysqlcom;
MySqlDataReader mdr;
mysqlcon.Open();
string selectquery = ("SELECT* FROM tbl_phonebook WHERE CID LIKE '" + this.textBox1.Text + "%'");
mysqlcom = new MySqlCommand(selectquery, mysqlcon);
mdr = mysqlcom.ExecuteReader();
if (mdr.Read())
{
cid.Text = mdr.GetString("CID");
name.Text = mdr.GetString("Name");
address.Text = mdr.GetString("Address");
contact.Text = mdr.GetString("Contact_Number");
email.Text = mdr.GetString("Email_Address");
photobox.Image = mdr.("Photo"); /// this line is the error it says "cannot implicitly convert type 'string' to 'System.Drawing.Imaging'
}
else
{
MessageBox.Show("Record Not Found!");
}
mysqlcon.Close();
}
如何解决“无法将类型 'string' 隐式转换为 'System.Drawing.Imaging' 或者是否有另一种方法可以在图片框中显示数据库中的图像
【问题讨论】:
-
tbl_phonebook 表中照片列的数据类型是什么?
-
请考虑对查询使用参数化,因为从文本框输入构建字符串可能会导致 SQL 注入 dev.mysql.com/doc/connector-net/en/…
-
这里已经有 很多 篇文章精彩地说明了如何从 blob 转换为图像。
-
你能分享一个值的例子吗?它们是 URL 还是什么?
-
你的查询将受到 sql 注入攻击
标签: c# mysql image picturebox system.drawing.imaging