MVCのデフォルトの約束

1965 ワード

MVCプロジェクトには多くのデフォルトの約束があります.例えば、デフォルトではJavascriptファイルをScriptフォルダに置く必要がありますが、このフォルダの名前を変更するのを妨げてはいません.また、フォルダ全体をどこに置くかは、プログラムの正常な実行に影響しません.もう一つは慣例優先の原則に従うことです.多くのプロジェクトに対して、既存の慣例に厳格に従って、合理的なデフォルトオプションはおそらくこれらのプロジェクトが必要であることを意味しています.命名仕様が確立されれば、このようなシステムに必要な配置項目の数を著しく減らすことができ、プロセッサマッピング、ビュー解像器、ModelAndView実を構築することができます.例えば、などがあります.これは高速プロトタイプの開発にとても便利です.ある程度のコードバンクの整合性を提供しています.さらにその中から選択して成型製品に発展することができます.
――コントローラ類に関する規範的な約束
  • コントローラクラス名は、必ずControllerで終了します.例えば、ProducController
  • プロジェクトでコントローラを参照する場合、例えばHTML helperメソッドを使用する場合は、前半の名前だけを指定します.例えばProduct;
  • IController Factoryインターフェースを実現することによってカスタマイズされた約束を作ることができます.
    ----ビューに関する約束
  • ビューまたはセグメントビューは、ProducControllerameフォルダに配置されます.例えば、Product Controller類に関連するビューは/Views/Productフォルダに配置されます.
  • MVCフレームワークは、たとえばListメソッドのビューをList.cshtmlと呼ぶべき方法名でaction方法のデフォルトビューを望むべきである.ListメソッドはProducControllerクラスにあるため、デフォルトのビューは/View/Product/List.cshtmlであるべきである.
  • action方式でreturn View()を直接呼び出すと、デフォルトビューが表示され、他の指定ビューが表示されると、action方法でreturn View(「MyOtherView」)を呼び出す必要があります. 
  • MVCフレームはビューパスのデフォルトの順序を検索します.まず/View/Controllername/フォルダの下で検索します.見つからなかったら/Views/Shared/フォルダの下で検索します.まだ見つけられないなら、エラーが発生します.
    ----レイアウトに関する約束
  • レイアウトファイルはファイルに「_」プレフィックスを付け、かつ/Views/Sharedフォルダに置く必要があり、デフォルトでは空項目テンプレートを除いて「u Layout.cshtml」をレイアウトテンプレートとして使用し、/View/_View Start.cshtmlで呼び出します.
  • 指定されたレイアウトで置換したい場合、変更されます.
    @{
                Layout="~/Views/Shared/MyLayout.cshtml";
    }
  • またはレイアウトを無効にしたい場合は、_View Start.cshtmlを修正する:
  • @
    {
           Layout=null;     
    }