0

これらの製品に含まれる製品と部品の基本的な CRUD 機能を備えた ASP.NET MVC アプリケーションのスケルトンを準備しています。アプリケーションには、MasterPage に基づいて厳密に型指定されたビューがいくつか含まれており、メニュー ツリーを表示するウィジェットを追加したいと考えています。このメニュー ツリーは製品/パーツ構造を反映するため、メイン ウィンドウに表示されるコンテンツに関連しています。

フォーラムを検索したところ、ツリー レンダリングのさまざまな方法を見つけ、アプリケーションに新しいウィジェットを含めることができました。

  • 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 テクノロジに慣れていないため、そのような場合の最適なパターンについてはわかりません。

任意のヘルプ (提案、パターン、良い例を示すなど) をいただければ幸いです。

ありがとう
ディオルク

4

2 に答える 2

0

jqGridを使用してツリーを表示できます。また、CRUD 操作もサポートしています。非常に使いやすいというわけではありません。

于 2009-11-18T16:56:28.750 に答える
0

派手な UI サポートが必要でない限り、レンダリングされた既存の HtmlHelper ツリーを使用するでしょう。

JavaScript バージョンを使用したい場合は、すべてをアクションまたは部分ビューにラップして、マスター ページから呼び出すだけです。

MVC には部分的なレンダリングやサブコントローラーがないため、データの取得はより困難な部分になります。

次のような手法を使用できます: ASP.NET MVC で jQuery を使用して部分ビューをレンダリングする

詳細については、MvcContrib とそのサブコントローラーの機能を確認してください。また、次のサイトを参照してください RenderAction と RenderPartial のどちらを使用するかを決定するのに役立つ詳細については、 を参照してください。

IMO ただし、マスターページを介してレンダリングすることは絶対に避けたいと思います。masterviewmodels に入る必要があります。厳密に型指定されたマスター ページが必要な場合は、MVC アプリケーションに追加する必要のある侵襲的なクラフト コードが多数あります。

于 2009-11-18T17:35:53.860 に答える