的最小數目現在我有以下表模式:獲取分層樹與查詢
Node_Id (INT)| NodeName (nvarchar(40)) | ParentNode(int, FK)
我想要從這個結構層次樹:結構simmilar這一個:{NodeId, NodeName, IEnumerable<Node> Children, bool hasChildren}
我看到了這個問題的兩個解決方案:首先是樹遍歷。我的意思是加載根節點(其中parent = null),然後爲每個節點加載它的子節點,並遞歸地爲這些節點執行此操作。但是每個子負載都會導致對性能影響的DB的額外查詢。
我看到的另一個選擇是從數據庫加載平面結構(與表模式相同),然後從它建立分層結構。這是應用程序服務器的性能。
我想知道是否還有其他解決方案?
是的,我知道延遲加載的,那就是選擇。但是,如果可能的話,我想避免它,並立即加載樹 - 它有近15000個節點 - 不夠大。 – seeker 2014-08-27 10:08:20