0

次のスキーマを持つ、フォルダ用とファイル用の2つのデータベーステーブルがあります。

フォルダー

  • FolderID
  • フォルダ名
  • DateCreated
  • ParentFolderID

ファイル

  • FileID
  • ファイル名
  • FileExtension
  • 説明
  • FolderID
  • DateUploaded
  • DownloadCount

基本的に、JSONが返されるようにこれらをクエリする方法を知る必要があります。jQueryTreeviewプラグインまたはjqTreeで使用できます。

データベースから返されたデータからFileオブジェクトとFolderオブジェクトを作成するために使用できる、FileとFolderの2つのクラスがありますが、フォルダーにサブが含まれるように、jsonとして返す方法がわかりません。フォルダとすべてのファイルが正しいフォルダに表示されます。

助けていただければ幸いです。検索して検索しましたが、ASP.NET MVC 3を使用した例しか見つかりませんでした。残念ながら、このプロジェクトではASP.NETMVC2を使用していません。

前もって感謝します。

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ツリービュープラグインを使用している場合は、次を生成できます。

<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 に答える