Asp.net mvc 使用linq循环遍历文件夹

Asp.net mvc 使用linq循环遍历文件夹,asp.net-mvc,razor,Asp.net Mvc,Razor,我试图循环浏览目录并在网页上显示文件。 我已经设法找到了一个脚本,但它没有完成循环 有什么建议吗?目前我只能查看当前文件夹中的内容 提前谢谢 赫斯 控制器 public ActionResult Index() { DirectoryInfo assetsDirectory = null; FileInfo[] files = null; //string salesFTPPath = dirPath;

我试图循环浏览目录并在网页上显示文件。 我已经设法找到了一个脚本,但它没有完成循环 有什么建议吗?目前我只能查看当前文件夹中的内容

提前谢谢 赫斯

控制器

 public ActionResult Index()
    {


        DirectoryInfo assetsDirectory = null;
        FileInfo[] files = null;

            //string salesFTPPath = dirPath;
            assetsDirectory = new DirectoryInfo( Server.MapPath("~/assets/img"));
            files = assetsDirectory.GetFiles();
            Response.Write(assetsDirectory);

        var MaterialFiles = (from c in files 
                          select c);

        return View(MaterialFiles);

    }
看法

@model IEnumerable
@foreach(模型中的var项目){
@item.DirectoryName-@item.Name.ToString()
}
使用LINQ:

FileList.Select(f => f.FullName).ToArray();
或者,使用目录可以直接获取文件名

string[] fileList = Directory.GetFiles(DirPath, "*.*", 
                                       SearchOption.AllDirectories);

你的意思是它应该是递归的吗?嗨,对不起,是的,例如文件夹1文件1,文件2子文件夹文件1,文件2文件夹2等。谢谢你的LINQ。我如何定义开始目录?var MaterialFiles=files.Select(f=>f.FullName.ToArray();返回视图(物料文件);好的,你需要先找到子目录。请点击链接。
string[] fileList = Directory.GetFiles(DirPath, "*.*", 
                                       SearchOption.AllDirectories);