2

私はコンピューター サイエンスの学生で、以前に MVC を使用したことはありますが、プロジェクトをゼロから構築したことはありません。このプロジェクトは、教師が注目の写真をアップロードできる写真コース用です。生徒は、写真と課題を表示できるようにログインする必要があります。

生徒には www.mysite.com に、教師には admin.mysite.com にログインしてもらいたいので、1 つのソリューションに 2 つの異なる Web サイトがあります。

私のソリューションプロジェクトは次のとおりです。

  • データレイヤー
  • ビジネスロジックレイヤー
  • 管理者ウェブサイト
  • Webサイト

注: Gearhost が私のホストになります。

では、AdminWebsite と Web サイトを 2 つの異なるドメインでホストし、両方とも同じ BusinessLogic と DataLayer から「フィード」する方法を教えてください。

代わりに、同じデータベースで動作する 2 つの異なるプロジェクトを作成する必要がありますか? 可能ですか?

調査を行い、エリアについて少し読みましたが、適切なチュートリアルを見つけることができませんでした。代わりにエリアを使用することをお勧めしますか?そうであれば、良いチュートリアルへのリンクを教えてください。または簡単な例ですか?

読んでくれてありがとう!

4

2 に答える 2

1

答えは本当に依存します。プロジェクトの規模によって異なります。すべてを 1 つのプロジェクト (メイン MVC のプロジェクト) に含めることができ、さらに分割することもできます。このプロジェクトの正規形は次のようなものです。

project.WEB
project.Common (here belongs common functionality between projects, so helpers, utilities, even some extension methods belong there)
project.Model (Data entities)
project.BL //(Business Logic)
project.DAL //(Data Access Layer or Persistence)
project.Tests

*「プロジェクト」は名前空間のルートであることに注意してください。名前空間の命名を処理する方法は、そこで確認できます:名前空間の命名規則

そして、あなたはそれをさらに分割することができます。ただし、これ以上分割して誇張しないことをお勧めします。あなたがそれをしなければならないとき、あなたは知っているでしょう(1つのプロジェクトが大きくなりすぎて、ロジックの分離があります...)。YAGNIの原則に従おうとします。

後もう一つ。「本で」そこに行きたい場合は、DDD - Domain Driven Desing: http://msdn.microsoft.com/en-us/magazine/dd419654.aspxをチェックしてください。

于 2013-03-09T10:37:19.430 に答える
1

シンプルなサイトと実装では、パブリック サイト、メンバー サイト、および管理サイトに 1 つのプロジェクトのみを使用するのが一般的です。

ユーザーの権限に応じて各領域を区切ることができるため、2 つの別個の Web サイトを作成する必要はありません。

ベスト プラクティスと例については、次のリソースをお勧めします。

asp.netで MVC ページを開始するのに最適な場所

Stackoverflow には、ベスト プラクティスや Web サイトのレイアウトに関する多くの質問やコミュニティ wiki エントリもあります。

これが役立つことを願っています

于 2013-03-09T10:21:34.153 に答える