c# - 如何从 Windows 窗体中的 MySQL 获取图像

标签 c# mysql

我正在尝试将位图图像(jpeg、png、jpg)从 WinForms PictureBox 插入到 MYSQL DB BLOB 属性,然后再次将其读出到该 pictureBox。
插入执行正常:

user.Img = pictureBoxFoto.Image;

sqlCommand.CommandText = "INSERT INTO`gclinic`.`user`(`Img`)VALUES (@img);";
sqlCommand.Parameters.Add(new MySqlParameter("@img", user.Img));

if (sqlCommand.ExecuteNonQuery() != 1)
{
 throw new InvalidProgramException("Erro: SQLuser - add() Throw() - mysql ");
}

问题似乎出在从 MYSQL 读取上:

    if (!reader.IsDBNull(reader.GetOrdinal("Img")))
    {
        Byte[] byteBLOBData = new Byte[0];
        byteBLOBData = (Byte[])(reader["Img"]);
        MemoryStream stmBLOBData = new MemoryStream(byteBLOBData);
        user.Img = Image.FromStream(stmBLOBData);
    }

抛出异常:System.Drawing.dll 中的“System.ArgumentException”“参数无效”加载 System.Drawing.Image 异常

最佳答案

将其添加到您的代码中。

byteBLOBData[0]=new Byte();

关于c# - 如何从 Windows 窗体中的 MySQL 获取图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41080967/

相关文章:

c# - 我应该 null 保护我的 F# 代码免受 C# 调用吗

mysql - 在 MySQL 中提取 JSON 数组的某些成员

mysql - 条件插入查询(行计数验证)。 (MYSQL)

c# - 如何使用多线程 C# 执行控制台应用程序

c# - 传递数组指针以放置在 C++ 中的 HashMap 中

c# - 如何在遵循 MVVM 设计模式的 WPF 应用程序中工作之前显示等待对话框?

c# - 如何在列表框中列出所选目录中的文本文件?

bash - Shell 脚本将所有输出转储到一个文件

php - 我的 PHP 脚本仅从表中返回一行

mysql - 语句更改时在 SQL 上获取数据