2013-10-20 7 views
7

C# dizi bytegöreli yol ı</p> ben bu kuruluşun logosu db değilse veritabanında kaydetmek için bayt dizisi okumak istiyor <pre><code>~/image/noimage.jpg </code></pre> <p>olarak bir görüntünün göreli yolunu sahip

public byte[] org_logo(int myOrgId) 
    { 
     byte[] photo ; 
     var context = new mp_repositoryEntities(); 
     var query = from o in context.organizations 
        where o.organization_id == myOrgId 
        select o.logo;    
     photo = query.FirstOrDefault<byte[]>(); 
     if (photo == null) 
     { 
      photo = File.ReadAllBytes("~/image/noimage.jpg"); 
     } 
     return photo; 
    } 

Bu yolu asp görüntü denetimine ayarlıyorum, o zaman iyi çalışıyor.

logo.ImageUrl = "~/image/noimage.jpg"; 

herhangi bir fikir ?????

cevap

15

File.ReadAllBytes bir asp.net api değil, bu yüzden lider ~ bunun anlamı yok. Bunun yerine, deneyin:

string path = HttpContext.Current.Server.MapPath("~/image/noimage.jpg"); 
photo = File.ReadAllBytes(path); 
İlgili konular