0

我有几个数据库表,一个用于文件夹,一个用于文件,具有以下模式。

文件夹

  • 文件夹ID
  • 文件夹名称
  • 创建日期
  • 父文件夹 ID

文件

  • 文件ID
  • 文件名
  • 文件扩展名
  • 描述
  • 文件夹ID
  • 上传日期
  • 下载次数

基本上我需要知道如何以 JSON 返回的方式查询这些,可以与jQuery Treeview 插件jqTree 一起使用

我有两个类,文件和文件夹,可用于从数据库返回的数据创建文件和文件夹对象,但我不知道如何将它作为 json 返回,以便文件夹包含它们的子-文件夹,所有文件都显示在正确的文件夹中。

任何帮助将不胜感激,我搜索并搜索,但我能找到的只是一个使用 ASP.NET MVC 3 的示例,不幸的是我在这个项目上使用 ASP.NET MVC2 被困住了。

提前致谢。

public class Folder
{
    public int FolderID { get; set; }
    public string FolderName { get; set; }        
    public IList<Folder> Subfolders { get; set; }
    public IList<File> Files { get; set; } 
    public bool IsRootFolder
    {
        get { return Subfolders.Count == 0; }
    }
}

public class File
{
    public int FileID { get; set; }
    public int FolderID { get; set; }
    public string FileName { get; set; }
    public string Exstension { get; set; }
    public string Description { get; set; }
    public DateTime? UploadDate { get; set; }
    public int DownloadCount { get; set; }
}
4

1 回答 1

1

树视图的 HTML 只是嵌套的无序列表(ul 和 li 元素)。因此,只需从您的 JSON 数据生成它,然后使用您的插件设置最外层列表的样式。

例如,如果您使用 jQuery treeview 插件,您可以生成:

<ul id="tree">
    <li>Node 1</li>
    <li>Node 2</li>
        <ul>
            <li>Node 2.1</li>
            <li>Node 2.2</li>
        </ul>
    <li>Node 3</li>
</ul>

然后使用样式:

$("#tree").treeview();
于 2012-10-29T22:43:39.733 回答