ASP.NET MVC を使用しています。3クラス作りました。これらのクラスをどこに保存すればよいのでしょうか。私のMVCの理解から、それらはコントローラーセクションに保存されるべきではありません。そうですか?
5 に答える
コントローラー セクションはコントローラー用であるため、他の種類のクラスをそこに格納しても意味がありません。ただし、必要な場所にほとんど保管できます。フォルダを作成するか、必要に応じて分類するだけです。それはすべて、独自の慣習とスタイルに帰着します。
クラスが何をするのか、クラスを分類する意味を考えてください。
モデルクラスを参照していると思うので、Models
.
オブジェクト指向プログラミングの原則 (SOLID) についてしばらく調べてみることを強くお勧めします。その後、「実世界」の MVC Web アプリケーションのアーキテクチャがどのように見えるべきかを理解してみてください。インターネット上にあるチュートリアルの多くは技術的な可能性を簡略化したものであるため、明示的に「実世界」について言及していますが、これが自分のアプリケーションにどのように適合するかについては説明していません。私は最近、この 2 つの側面に多くの時間を費やしました。これですべての知識が得られたとは言えませんが、理解が深まりました。
あなたの質問への答えとして:これらのクラスはコントローラーではないため、コントローラーフォルダーにあるべきではないと思います。彼らはいくつかのビジネスロジックを担当しているため、ビジネスレイヤー(別のプロジェクトである可能性があります)に属していると思います。また、イベントをデータベースに追加することは、SRP ( http://en.wikipedia.org/wiki/Single_responsibility_principle )に違反するため、日付計算と同じクラスには属しません。これは、データ層 (別の別のプロジェクトにすることができます) にある別のクラスにある必要があり、ビジネス層からこれを呼び出すことができます。
もう 1 つ興味深いのは、fat コントローラー ( http://codebetter.com/iancooper/2008/12/03/the-fat-controller/ )と呼ばれるこのアンチパターンです。