1
私は、Windowsプログラミングから来るasp.netの世界に新しいです。セッション、認証、ページのライフサイクルは、やはり私にとってはやや複雑な概念です。ビジネスロジックを備えた単純なasp.netアプリケーションのデザインパターン?
私は現在asp.netを学ぶために単純なウェブサイトを設計しています。 (非常に単純なディスカッションボードw /タグ、stackoverflowのようなものだが100xシンプル)
私はデータアクセスレイヤーを設計し、今度はビジネスロジックを設計しました。ビジネスロジックは次のようになります。
- バックエンドコンポーネント:正規化データ、複雑な計算などバックエンドには2つのクラスしかなく、おそらく15〜20のメンバーしかありません。
- フロントエンドクラスがアクセスするためのコントローラ静的クラス。
私の質問は以下のとおりです。
- コントローラクラスnessasaryですか? asp.netページで各バックエンドコンポーネントを直接インスタンス化する必要がありますか?
- 一般的にセッションと認証を処理するのは誰ですか?バックエンドがそれを処理すべきか、またはフロントエンドのマネージャークラスは、すべてのユーザーセッション/認証を担当する必要がありますか?
- ウェブページオブジェクトが再インスタンス化されるたびにページを訪問することを理解していますが、フロントエンドがバックエンドを制御しているのは本当に悪い習慣ですか?
応答ありがとうございます!私はMVCを使用するように誘惑されましたが、MVCはウェブサービスとどのくらいうまく連携していますか?アプリのビルドは主にAjaxに依存していますが、MVCが静的ページで最も効果的であるという印象を受けます。 – Bonk
実際、Webサービスの代わりにMVCコントローラを非常に簡単に使用できます。コントローラーに要求を行い、そのコントローラーからJQuery AJAX呼び出しにコンテンツまたはJSONを戻すことができます。それは非常に簡単です。 JQueryを使用してWebサービスコールを作成することはできますが、MVCにはクライアントサイドプロキシ生成機能は存在しません。それでも、私はMVCを使い、愛しています。 –
また、ASP.NET Web APIは、RESTベースの次世代Webサービス(Microsoftの立場から)であり、MVCフレームワークを使用しています。 –