2012-04-05 26 views
2

.NETフレームワーク4.0でasp.netアプリケーションとしてビルドしており、エンティティ(Entity Framework)にLinqを使用してDataModel(DAL)として使用します。エンティティフレームワークがDALレイヤーになる3層レイヤー。asp.net webformsアプリケーションでのEntity Frameworkのベストプラクティス

私の選択、挿入、更新、削除の機能を呼び出すプレゼンテーション層(私のページ)からそれを扱うように、私はテーブルのBLLレイヤーを持っていなければなりません。エンティティフレームワークをプレゼンテーションレイヤーに直接挿入しますか?

答えて

2

これはアプリケーションによって異なります。レイヤーが定義されていないため、必要なレイヤーが定義されています。

アプリケーションが大規模でビジネスルールが頻繁に変更される場合は、BLLレイヤーを作成してください。さもなければ、IMHO、それはちょうど大胆なことです。 アプリケーションの規模と変更の割合を決定する際の主な関心事にする必要があります。

EFを直接呼び出すと、ビジネスルールがプレゼンテーションレイヤー内にあることに注意してください。変更が必要な場合は、プレゼンテーションレイヤーのリファクタリングが混乱して再利用性が低下します。

ただし、アプリケーションの規模、プロジェクトのスケジュール、ビジネスルールの変更率などによって異なります。

+0

私のアプリケーションはニュースポータルで、addarticle()などの同じメソッドを繰り返してはいけません。例えば、記事のBLLレイヤーを実行してそのプロパティを埋めて、Addarticle()メソッドを呼び出すことができます。残りの作業を行います。 –

+0

プレゼンテーションにaddarticleメソッドを定義して再利用するだけで、ビジネスレイヤの実装を意味するものではありません。 – daryal

+0

あなたはまったく正しいですが、後でテーブルに新しいフィールドを追加した場合など、このメソッドを3回修正する必要があります。 –

関連する問題