asp mvcデザインの質問:シングルビューのための複数のデータタイプ

StackOverflow https://stackoverflow.com/questions/2010100

  •  18-09-2019
  •  | 
  •  

質問

私のデータベースがか十数テーブルを表す参照型(全てIDおよびカラム名なものでなければならないのとして別のテーブルな標準化へいことがあります。私はビル管理の申請がしたいのは、管理者が追加/編集/削除/リストこれらすべてのルックアップんので再利用のモデルで、より効率化すく、asp mvc2-用途、書面以外3、1コントローラごとのルックアップタイプにより48景色と12のコントローラ?

役に立ちましたか?

解決

私はあなたのモデル、コントローラ、ビュー間の結合を削除することをお勧めしません。このパターンの背後にある考え方は、ワークフローからのプレゼンテーションからビジネスロジックを分離してもらうということです。あなたは同じビュー/コントローラに複数のモデルを混合開始した場合、それは厄介な取得します。

たぶん、あなたは、マスターページを使用しようとすると、あなたのモデルではなく、そのような共通の基底クラスか何かから継承抱えている何をやってみては?この方法で、あなたは、同じファイルにそれを壊しせずにコードを再利用することができます。

他のヒント

どのような単一のエンティティに、それらのすべてを兼ね備えた、より高度なORMマッピングについてはどうですか?

私はの一方のコントローラと各CRUD操作のためのアクション/ビューの(1×4)でこれを行うことになります。ときに1つ以上のルックアップテーブルのスキーマの変更ならば、私はそれに対処するでしょう。あなたが各テーブルに列を追加する場合はそれ以外の場合は、仕事を考える伴う:あなたは48x12または任意のファイルを更新する必要があります。

あなたがそれを行う方法の詳細は、お使いのモデルによって異なりますが、単にADO.NETを使用して戻って行うことができるのDataTableまたはテーブル名がビューによって供給され、動的SQL文を使用して、人口似ています。あなたは、文字列の連結を使用していた場合は、当然のことながら、SQLインジェクションを防ぐために必要があるでしょう。

と似てポストされたデータを更新するために、どのテーブルを知っている投稿フォームからテーブル名を使用するビューを作成します。

見をT4テンプレートワ例 めるものです。対応することができるでしょうコードを元にコントローラを見に基づく各モデルです。

申し訳で、私の答えは、48の景色と12のコントローラ...のコードgenないように設定を追加する場合よりのルックアップの種類ございますのでご注意下さいに必要なのは、再実行のコード、ブームコントローラとの景色が設置されております。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top