0

Entity Framework で 3 層設計を視覚化しようとしています。

EF コンテキストの上にリポジトリがある場合、それらは両方ともデータ層のコンポーネントですか?

それとも、リポジトリはデータ層そのものであり、EF は別のものですか?

リポジトリまたはデータ層と通信する BLL を用意し (手がかりがありません..)、これらすべてがどのように適合するかを理解しようとしています。

4

1 に答える 1

2

EF の上にあるリポジトリをData Layer Abstractionと呼びます。私はそれを別のレイヤーとして視覚化しません。リポジトリはデータ層です。

そうでなければ、EF 自体がデータ層の抽象化であると言い始めることができます。なぜなら、EF は多くのデータベース システムをサポートする ORM であり、Repository および Unit of Work パターン自体の実装だからです。データ レイヤーとしてのデータベースと、EF と呼ばれる ORM の形式でのデータ レイヤーの抽象化、および EF の上にカスタム リポジトリの形式での第 2 レベルの抽象化があると言うことができます。

アプリケーションのデータ ストレージへのアクセスを管理するレイヤーはデータ レイヤーであり、それがリポジトリです。EF とデータベースは、この層の細部にすぎません。

于 2012-01-04T18:17:26.033 に答える