2009-11-18 43 views
0

我正在準備ASP.NET MVC應用程序的框架,並在這些產品中包含的產品和部件上具有基本的CRUD功能。應用程序包含幾個基於MasterPage的強類型視圖,現在我想添加一個小部件來顯示菜單樹。此菜單樹將反映Products/Parts結構,因此它與主窗口中顯示的內容相關。ASP.NET MVC與樹模式

找遍了論壇,並發現樹呈現的不同方式,包括在應用程序中的新的widget:

  • jquery.treeview - 提供好看的樹,但我該如何使用(建設,渲染,通到視圖)它在我的應用程序?
  • RenderPartial,RenderAction等 - 似乎很清楚,所以我打算使用RenderAction方法將我的小部件包含在母版頁中,但是如何構建/渲染要顯示的樹?
  • 擴展的HtmlHelper創建一個新的Html.RenderTree方法(在很好的例子:http://www.matthidinger.com/archive/2009/02/08/asp.net-mvc-recursive-treeview-helper.aspx

也許我應該只是合併的例子發現一些片段,但由於我是新來的ASP.NET MVC技術我不確定這種情況下的最佳模式。

任何幫助(建議,模式,點好的例子等),將不勝感激。

感謝
diork

回答

0

您可以使用jqGrid顯示樹。它還具有CRUD操作支持。並不是說它使用起來非常簡單。

0

我可能會使用現有的HtmlHelper樹呈現,除非你需要花哨的UI支持。

如果您確實想使用JavaScript版本,您只需將所有內容都包含在Action或partial視圖中,以便從母版頁調用。

由於MVC缺少部分渲染或子控制器,所以獲取數據將變得更加困難。

你可以使用這樣的技術: Render Partial View Using jQuery in ASP.NET MVC

欲瞭解更多信息,請查閱MvcContrib及其子控制器功能,雖然你在它,看一看:http://devlicio.us/blogs/derik_whittaker/archive/2008/11/24/renderpartial-vs-renderaction.aspx獲取更多信息,以幫助您決定RenderAction和RenderPartial。

IMO我會盡量避免通過母版頁渲染。你必須進入masterviewmodels,如果你想要強類型的母版頁,那麼就有很多侵入性的cruft代碼必須被添加到你的MVC應用程序中。