ASP.NET MVC を使用して非常に大きなアプリケーションを開発していますが、最初は、一般的な CRUD アクション (新規、保存、削除...) と既定のリスト アクションを備えた抽象ベース コントローラーを使用すると便利であることがわかりました。私たちの場合、この種のコントローラーを介して管理される 20 以上のエンティティがあります。
これは機能し、一部のコードの重複を回避し、アプリケーションをより均一にしますが、コントローラーが実装されているアクションを正確に確認するのが難しく、存在しないはずのアクションを実装する場合があります。たとえば、id ではなく名前を渡して編集したい場合、新しい EditByName(name) を作成する必要があり、それを行っても、ベースにあるので Edit(id) アクションを使用できます。
私には全体が少し臭いがしますが、私が目にする MVC アプリケーションのドメインはかなり狭いため、代替を示す例は見つかりませんでした。何かアドバイスはありますか?例はありますか?(私は必ずしも ASP.NET MVC にいるとは限りません。この問題は、どの MVC フレームワークにも共通していると思います)。