【发布时间】:2014-04-15 07:25:13
【问题描述】:
我正在创建一个需要列出特定文件夹中所有文件和目录的 Web 应用程序。 我创建了 resurvice 函数来列出这些,但另一个规范是,如果目录没有文件,则不应显示该目录。
现在的问题是,如果我有一个带有子菜单、带有子菜单、带有子菜单、带有子菜单的目录,并且只有最后一个子菜单中有文件,该怎么办。它仍然需要显示所有其他目录。
我不知道如何实现这一点,任何代码或提示将不胜感激!
我当前的递归函数:
private List<FolderModel> GetFolderSubFolders(IFolderInfo folder)
{
var retval = new List<FolderModel>();
// Foreach subfolder in the given folder
foreach (var subFolder in FolderManager.Instance.GetFolders(folder))
{
// Create new foldermodel
var folderModel = new FolderModel
{
FolderName = subFolder.FolderName,
Bestanden = GetFolderBestanden(subFolder),
// Recall this function
SubFolders = GetFolderSubFolders(subFolder)
};
// Check if we have files and subfolders
if (folderModel.Bestanden.Any() && folderModel.SubFolders.Any())
{
folderModel.hasFilesAndFolders = true;
}
retval.Add(folderModel);
}
return retval;
}
【问题讨论】:
-
你想隐藏空文件夹还是显示?
-
隐藏文件夹,如果其中没有任何文件(包括子文件夹)