Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Tôi muốn tải hình ảnh từ cơ sở dữ liệu vào một hộp hình ảnh bằng LoadAsync và MemoryStream

Không tải các byte vào hình ảnh, điều đó sẽ đánh bại mục đích của những gì bạn đang cố gắng đạt được ... (lưu ý rằng đây là một cách nhanh chóng để đưa hình ảnh vào một tệp tạm thời ... có một rất nhiều cân nhắc bổ sung ở đây, không ít nhất trong số đó là xóa tệp tạm thời khi bạn hoàn thành)

byte[] byteBLOBData = (byte[])ds.Tables["magazine_images"].Rows[c - 1]["image"];
string tempImageFileName = Path.Combine(Path.GetTempPath(), Path.GetTempFileName() + ".jpg");
using( FileStream fileStream = new FileStream(tempImageFileName, FileMode.OpenOrCreate, FileAccess.ReadWrite) ) {
    using( BinaryWriter writer = new BinaryWriter(fileStream) ) {
        writer.Write(byteBLOBData);
    }
}

pictureBox1.LoadCompleted += LoadCompleted;
pictureBox1.WaitOnLoad = false;
pictureBox1.LoadAsync(tempImageFileName);

...

private static void LoadCompleted( object sender, AsyncCompletedEventArgs e ) {
    if( e.Error != null ) {
        // will get this if there's an error loading the file
    } if( e.Cancelled ) {
        // would get this if you have code that calls pictureBox1.CancelAsync()
    } else {
        // picture was loaded successfully
    }
}

cũng xem LoadProgressChanged sự kiện




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sử dụng các hàm MySQL trong các câu lệnh chuẩn bị sẵn trong PHP PDO

  2. Sử dụng libmysqlclient trong ứng dụng đa luồng

  3. cách tốt nhất để lưu trữ mối quan hệ người dùng 1:1 trong cơ sở dữ liệu quan hệ

  4. Kết quả kết hợp nhóm bị cắt

  5. Kết nối Zombie với MySQL bằng c3p0 với tomcat