c# - 有没有办法直接获取目录结构并将其解析为C#中的Json?

标签 c# asp.net-mvc

我想知道是否有办法获取特定目录结构并将其解析为 json,以便我可以使用 jquery 插件创建客户端 TreeView 架构。提前致谢

最佳答案

使用 JSON.NET:

JToken GetDirectory(DirectoryInfo directory)
{
    return JToken.FromObject(new
    {
        directory = directory.EnumerateDirectories()
            .ToDictionary(x => x.Name, x => GetDirectory(x)),
        file = directory.EnumerateFiles().Select(x => x.Name).ToList()
    });
}

示例用法:

var json = GetDirectory(new DirectoryInfo("...some path...")).ToString();

这将为您提供如下所示的 JSON:

{
    "directory":
    {
        "dirA": {
            "file" : [ "file0.txt", "file1.jpg" ]
        },
        "emptyDir": {
        }
    },
    "file": [ "file2.png" ]
}

关于c# - 有没有办法直接获取目录结构并将其解析为C#中的Json?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15793627/

相关文章:

c# - 具有 MemberOf 属性的 LDAP DirectorySearcher

C# NET 服务器/客户端应用程序

asp.net-mvc - ASP MVC自定义验证如何获取其他值

javascript - 如何使用 Google map 在 ASP MVC 中显示动态位置

c# - linq查询不同的日期

c# - 检查字符串是否是编译时已知的文字字符串?

asp.net-mvc - 将长度从 2 更改为 5 时,在 URL 中显示 Unique SEO 代码两次

asp.net-mvc - 如何在 View 中保留复杂对象,同时仅更新一小部分

asp.net - MVC3 : different validation for different input scenarios

c# - 无法从 BaseClass<int> 隐式转换为 DerivedClass