MVCの新人であることから少し問題があります。私は私のビューモデルオブジェクトのコレクションに依存するページを開発しています。すべての良い。しかし、ページには比較的複雑な機能があるため、メインドメインモデルの他のオブジェクトやコレクションをUIに表示する必要があります。軽量のオブジェクトよりはるかに軽い。これを達成する最良の方法は何ですか?Viewmodelのコレクションとその他のオブジェクト
答えて
私が行うのは、特定のビュー/アクションで表示する必要のあるデータをカプセル化するカスタムクラスを作成することです。したがって、管理者エリアのユーザーコントローラーでは、ユーザービジネスオブジェクトのリストを保持するAdminUserIndexViewModelクラスがあります。私はこのクラスに表示する必要がある他のデータも入れます。
自分のAdminUserEditViewModel(自分の管理領域、ユーザーコントローラ、編集アクションに対応する)には、必要に応じて変更するためのロールが添付された1つのユーザークラスがあります。ユーザー設定や設定などのその他の情報を入力する必要がある場合は
現在作業しているビューモデルの一部でない場合は、Html.Actionを使用して別のコントローラメソッドを呼び出して、コントローラメソッドを使用して別のインラインビューをレンダリングできます。
OKありがとうございますが、達成しようとしているものに合うかどうかはわかりません。私は、ドロップダウンを埋めるためのデータ、すなわちキーの値のペアのソートの後にいる。しかし、あなたの提案は私のUIの他の側面について考えさせてくれました! – MaRk
その後、ネット上のコンボボックスのためにhtmlヘルパーのいくつかを使用するか、あなたの現在のビューモデルからそれらを形成するためにあなた自身のものを書いてください。 –
- 1. ViewModelは他のViewModelを返すことができます
- 2. リストと他のモデルとのコール・コレクション
- 3. 配列オブジェクトのコレクションのコレクション
- 4. knockout.jsは1つのviewmodelをクリックして、他のviewmodelをレンダリング
- 5. オブジェクトの継承とコレクション
- 6. オブジェクトと子コレクションの拡張?
- 7. エンティティフレームワーク:関連オブジェクトとその他の状態管理の添付
- 8. 他のviewModelからのXamarin MvvmCrossコールコマンドハンドラ
- 9. PowerAppsギャラリーを使用してコレクションとその他の変数を表示
- 10. oracleオブジェクトとコレクション
- 11. 揮発性とArrayBlockingQueueとおそらく他の同時オブジェクト
- 12. Amazon CognitoUserPoolとその他のオブジェクトは存在しません
- 13. オブジェクトのDelphiコレクション
- 14. それぞれがコレクション内の別のオブジェクトへの参照を含むオブジェクトのコレクションをシリアル化するとき、それは何をしますか?
- 15. オブジェクトのマップのコレクション
- 16. .NETのコレクションとオブジェクトのメソッドへのアクセス
- 17. 多くのコレクションをオブジェクトそのものと同じ時間にロードする
- 18. ネストされたオブジェクトを他のコレクションに参照する方法
- 19. は、追加クラスのオブジェクトを作成し、その後、コレクション
- 20. オブジェクトとコレクションの初期化子とアクセサリー
- 21. knockout.jsは、メインのviewmodelにネストされたのviewmodelとのviewmodelで
- 22. コレクションからコレクションを取り出すときのオブジェクトのダウンキャスト
- 23. ポインタのコレクションとオブジェクトの追加
- 24. Java独自のオブジェクトと.equalsのコレクション
- 25. コレクションにアクティブなアイテムのみが含まれているオブジェクトとそのコレクションを選択するラムダ式
- 26. Symfony/Jqueryオブジェクトのコレクション
- 27. オブジェクトのコレクションにレイジーロード
- 28. POSTのViewModelのASP.NET MVC - Nullオブジェクト
- 29. ViewModelオブジェクトへのEntity Frameworkナビゲーションプロパティのマッピング
- 30. Cmake import -lpthreadとその他
コントローラで実行します。 viewmodelはDTOでなければならず、ロジックは含まれていません。 – Jason
私のviewmodelクラス定義はDTOの上にレイヤーとして機能します(ロジックは含まれていません)。ビューに配信するにはどうすればよいでしょうか? ViewBag経由またはサーバー側のマークアップブロック、つまり@ {..}? – MaRk
モデルにプロパティを追加し、コントローラのプロパティを設定します。 – Jason