我有一个包含大约20个不带任何模型的部分视图的文件夹(只是简单的javascript / html)。是否有一种简单的方法来呈现特定文件夹中的所有视图,例如“/ Views / Shared / Forms / ....”?
答案 0 :(得分:9)
我认为还有另一种方法可以将某个文件夹中的所有Partials渲染到View。但是你可以这样做。 (测试)
控制器
public ActionResult Index()
{
var folderName = "~/Views/Partials/";
ViewBag.Partials = GetAllViews(folderName);
return View();
}
private List<string> GetAllViews(string folderName)
{
var path = Server.MapPath(folderName);
var dirInfo = new DirectoryInfo(path);
return dirInfo.GetFiles().Select(i => folderName + i.Name).ToList();
}
查看
@foreach (string partial in ViewBag.Partials)
{
//Html.RenderPartial(partial);
@Html.Partial(partial)
}