2013-04-13 26 views
8

Tüm resimlerimi "Images_uploads" klasörümdeki MVC Görünümüne görüntülemek istiyorum. Yani sitede görüntüleniyor. Ama hiçbir şey işe yaramıyor.Tüm resimleri MVC içindeki bir klasörde görüntüleyin. Bir foreach ile

{ 

<form method="post" action="/Images_upload" enctype="multipart/form-data"> 
    <input name="ImageUploaded" type="file"> 
    <input type="submit"> 
</form> 

<List<String> li = ViewData["~/images_upload"] as List<String>; 
foreach (var picture in li) 

    <img src = '@Url.Content("~/images_upload" + picture)' alt="Hejsan" /> 

} 
+0

soru nedir:

// controller public ActionResult MyAction() { ... ViewBag.Images = Directory.EnumerateFiles(Server.MapPath("~/images_upload")) .Select(fn => "~/images_upload/" + Path.GetFileName(fn)); return View(...); } // view @foreach(var image in (IEnumerable<string>)ViewBag.Images)) { <img src="@Url.Content(image)" alt="Hejsan" /> } 

Daha da iyisi, böyle bir kesinlikle yazılan görünümü model kullanacağız? –

+0

Tüm resimlerimi bir klasörde gösterebilir ve daha sonra bunları Görünüm'de gösterebilir. –

cevap

20

Muhtemelen kontrol cihazınızda böyle bir şey yapmalısınız. Bir klasördeki tüm dosyaların bir listesini elde etmek için EnumerateFiles kullanın:

// model 
class MyViewModel 
{ 
    public IEnumerable<string> Images { get; set; } 
} 

// controller 
public ActionResult MyAction() 
{ 
    var model = new MyViewModel() 
    { 
     Images = Directory.EnumerateFiles(Server.MapPath("~/images_upload")) 
          .Select(fn => "~/images_upload/" + Path.GetFileName(fn)) 
    }; 
    return View(model); 
} 
// view 
@foreach(var image in Model.Images) 
{ 
    <img src="@Url.Content(image)" alt="Hejsan" /> 
} 
+2

da yapabilirsiniz: Görüntüler = Directory.EnumerateFiles (Server.MapPath ("~/images_upload")). (F => "~/images_upload /" + f); seçin ve "~/images_upload" bölümünü kaldırın yolu tek bir yerde tutmak için bakış. – corrego

+0

Teşekkür ederim p.s.w.q, Şimdi ikinci sorum için bir resim yüklemeye çalışırken hata alıyorum. –

+0

p.s.w.g Nesnenin bir örneğine ayarlanmamış bir Nesne başvurusu alıyorum. @foreach üzerinde ... –

İlgili konular