2012-10-08 85 views
1

在從在GridView控制數據庫中的圖像的顯示,發生瞭如下錯誤:Parameter is not valid顯示圖像

下面的代碼顯示圖像:

 var id = Convert.ToString(user_id); 

     var category = (from data in db.Register1_db 
         where (data.User_ID == id) 
         select (data.Student_Photo)); 

     int len = category.First().Length; 
     // Output the binary data   
     // But first we need to strip out the OLE header   
     int OleHeaderLength = 78; 
     int strippedImageLength = len - OleHeaderLength; 
     byte[] imagdata = new byte[strippedImageLength];   
     Array.Copy(category.First().ToArray(), OleHeaderLength, imagdata, 0, strippedImageLength);   
     if ((imagdata) != null)   
     {    
      MemoryStream m = new MemoryStream(imagdata); 

       //error occurred    
      System.Drawing.Image image = System.Drawing.Image.FromStream(m);    
      image.Save(context.Response.OutputStream, ImageFormat.Jpeg);   
     } 
+0

你是怎麼執行這段代碼的?這將工作,如果它的處理程序,但不是如果它在後面的頁面代碼中定義。此外在代碼中發生這種情況? –

+1

這是很多原因之一,爲什麼大多數開發人員在數據庫之外存儲圖像。 –

回答

0

的更好的方式來顯示圖像在gridview中使用圖像處理程序。 Check this

+0

試圖在這裏得到我的問題的答案。我有兩個圖像,我想在顯示學生的網格中顯示。其中一個圖像將根據學生是否註冊顯示,這個視圖是強類型的,我怎樣才能使這個工作? – user793468