显示MVC中文件夹中的所有图像。 带着foreach

我想将我的文件夹“Images_uploads”文件夹中的所有图片显示到MVC视图中。 所以它在网站上显示。 但似乎没有任何作用..

{ 
<List li = ViewData["~/images_upload"] as List; foreach (var picture in li) Hejsan }

您可能应该在控制器中执行此类操作。 使用EnumerateFiles获取文件夹中所有文件的列表:

 // 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)ViewBag.Images)) { Hejsan } 

更好的是,使用强类型视图模型,如下所示:

 // model class MyViewModel { public IEnumerable 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) { Hejsan }