簡體   English   中英

如何在asp.net mvc 2中創建樹視圖?

[英]How do I create a treeview in asp.net mvc 2?

我有幾個數據庫表,一個用於文件夾,一個用於文件,具有以下模式。

資料夾

  • 資料夾編號
  • 文件夾名稱
  • 創建日期
  • ParentFolderID

檔案

  • 文件ID
  • 文檔名稱
  • 文件擴展名
  • 描述
  • 資料夾編號
  • 更新日期
  • 下載數

基本上,我需要知道如何以這樣的方式查詢這些內容,使得返回的JSON可以與jQuery Treeview插件jqTree一起使用

我有兩個類,File和Folder,可用於從數據庫返回的數據中創建File和Folder對象,但是我不確定如何將其作為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; }
}

樹視圖的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();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM