2012-11-05 7 views
8

私はASP MVC4アプリケーションでリポジトリパターンを使用しています。何かを生成するたびにコードを調整しないように独自の足場テンプレートを作成するといいと思いました。コントローラのカスタム足場

私はウェブからいくつかのチュートリアルを続けました。私はCodeTemplatesディレクトリのフォームProgramFilesを私のプロジェクトにコピーしました(ファイルの一部のみ)、私はそれぞれのカスタムツールプロパティをクリアしました。

私は2つのゴールを達成するために管理:「....読み取り/書き込みアクションとビューとコントローラを」私はコントローラへ行く>>コントローラを追加し、選択し、それを:

  • オーバーライドコントローラ用のデフォルトのテンプレートを私のテンプレートを使用します。
  • 新しいビューテンプレートを追加:SomeViewFolder> Add> Viewに移動すると、そこで新しいテンプレートを選択できます。

私は達成することができませんでした事がControllerWithRepo.tt新しいテンプレートを作成し、コントローラにそれを選択できるようにしました>>コントローラを追加します。 ControllerWithRepo.ttが作成されても、テンプレートのドロップダウンリストに表示されません。

ControllerWithContext.ttでハードコーディングしたいことができることは知っていますが、それは不十分な解決策であるようです。 DbContextクラスの代わりにリポジトリクラスを渡し、私が望むようにコントローラを生成するのが正しい方法です。

今すぐリポジトリクラスをdbcontextとして配置しようとすると、足場を実行できません。

要約すると、リポジトリパターン用に独自のコントローラスカフォールドテンプレートを作成するにはどうすればよいですか?

答えて

0

私はスティーブSanderersonのpostにはT4テンプレートをオーバーライド従うことによって、既存のControllerWithRepositoryを上書きすることができました。