我有一个文件夹,其中包含约20个没有任何模型的局部 View (只是纯javascript / html)。是否有一种简单的方法可以呈现特定文件夹中的所有 View ,例如“/ Views / Shared / Forms / ....”?

最佳答案

我认为没有另一种方法可以将所有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();
}

View
@foreach (string partial in ViewBag.Partials)
{
    //Html.RenderPartial(partial);
    @Html.Partial(partial)
}

关于asp.net - 渲染文件夹中的所有局部 View ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22060538/

10-15 09:57