在ASP.NET中,列出某个文件夹下的所有文档,包括子目录下的档案,通常我们会使用`System.IO`命名空间下的类和方法。下面是一个使用C#编写的示例代码,该代码展示了如何实现这一功能。
using System;
using System.IO;
public class DirectoryLister
{
public static void ListFiles(string startPath)
{
try
{
// 获取指定路径下的所有文件和目录
string[] directories = Directory.GetDirectories(startPath);
// 遍历所有目录
foreach (string dir in directories)
{
// 递归调用,列出子目录下的所有文件
ListFiles(dir);
}
// 获取指定路径下的所有文件
string[] files = Directory.GetFiles(startPath);
// 遍历并打印所有文件路径
foreach (string file in files)
{
Console.WriteLine(file);
}
}
catch (System.Exception ex)
{
Console.WriteLine("An error occurred: " + ex.Message);
}
}
// 示例用法
static void Main(string[] args)
{
string folderPath = @"C:\YourFolderPath"; // 请替换为你的文件夹路径
ListFiles(folderPath);
}
}
在这段代码中,`ListFiles`方法接受一个字符串参数`startPath`,该参数表示你想要开始搜索的文件夹路径。方法内部,首先使用`Directory.GetDirectories`方法获取该路径下的所有子目录,然后对这些子目录递归调用`ListFiles`方法。之后,使用`Directory.GetFiles`方法获取当前路径下的所有文件,并将它们的路径打印到控制台。
请注意,你需要将`folderPath`变量的值替换为你实际想要列出文件的文件夹路径。
这段代码简洁且高效,能够完成你提出的需求。