2017-05-30 128 views
0

海蘭主人,我有一些問題,當我轉換圖片varbinary(MAX) 我有這樣轉換VARBINARY要上傳圖片MVC asp.net

Create Procedure SelectBarang 
as  
Begin  
    Select * from Barang;  
End 

一個過程,我有類模型這樣

public class ShopDB 
{ 
    string cs = ConfigurationManager.ConnectionStrings["ShopEntities"].ConnectionString; 

    public List<Barang> ListAll() 
    { 
     List<Barang> lst = new List<Barang>(); 
     SqlConnection con = new SqlConnection(cs); 
     //using(SqlConnection con=new SqlConnection(cs)) 
     { 
      con.Open(); 
      SqlCommand com = new SqlCommand("SelectBarang", con); 
      com.CommandType = CommandType.StoredProcedure; 
      SqlDataReader rdr = com.ExecuteReader(); 
      while (rdr.Read()) 
      { 
       lst.Add(new Barang 
       { 
        IdBarang = Convert.ToInt32(rdr["IdBarang"]), 
        NamaBarang = rdr["NamaBarang"].ToString(), 
        Harga = Convert.ToInt32(rdr["Harga"]), 
        CategoriId = Convert.ToInt32(rdr["CategoriId"]), 
        GambarBarang = Convert ??        
       }); 
      } 
      return lst; 
     } 
    } 
} 

如何將varbinary更改爲圖像以添加我的數據?

+2

的可能的複製[從SQL Server VarBinary(Max)中讀取圖像](https:// stackoverflow。 com/questions/30778311/read-image-from-sql-server-varbinarymax) – NightOwl888

+0

我不贊成@ NightOwl888 –

+1

GambarBarang的數據類型是什麼? –

回答

1

嗨,你可以使用像做

  1. 可以讀取數據:

    byte[] myImage = (byte[])reader["MyImageColumn"]; 
    
  2. 在MVC視圖然後用這個

    @{ 
    var base64 = Convert.ToBase64String(Model.ByteArray); 
    var imgSrc = String.Format("data:image/gif;base64,{0}", base64); 
    }