简体   繁体   English

将BLOB数据转换为base64,然后显示它

[英]Converting BLOB Data Into base64 and Then Display it

I am trying to convert BLOB data that's coming from MySQL database to Base64 and then displaying this to an jpg image.. here's the code am using: 我试图将来自MySQL数据库的BLOB数据转换为Base64,然后将其显示为jpg图像。.这是使用的代码:

using (MySql.Data.MySqlClient.MySqlConnection connection = new MySql.Data.MySqlClient.MySqlConnection("S;Port=P;Database=DB;Uid=U;Pwd=P"))
            {
                connection.Open();
               MySql.Data.MySqlClient.MySqlCommand cmd = connection.CreateCommand();
               cmd.CommandText = "SELECT blobValue FROM Table WHERE blob_id = '333'";

               MySql.Data.MySqlClient.MySqlDataReader datr = cmd.ExecuteReader();
                if (datr.Read())
                {


                    byte[] xx = (byte[])datr.GetValue(0);

                    string base64String = Convert.ToBase64String(xx, 0, xx.Length);
                    Image1.ImageUrl = "data:image/jpg;base64," + base64String;

                    }

I guess am not having a problem with the code, but when running the code i get an empty picture, like this one --> 我想代码没有问题,但是运行代码时我得到了一张空白图片,像这样-> 在此处输入图片说明

Please some help. 请一些帮助。

Use following code. 使用以下代码。

public string BlobToStringConverter(OracleDbType.Blob blobObject){
    if (blobObject != null){
        return  Encoding.UTF8.GetString((byte[])(blobObject));
    } else {
        return string.Empty; 
    }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM