Entity Framework(mvc storefront)でリポジトリパターンを使用する

asp.net asp.net-mvc domain-driven-design entity entity-framework

質問

誰かが手を差し伸べることができますか?私はMVCストアフロントのためのビデオを見ていて、これらのテクニックを使って私自身のウェブサイトを作成しました。すなわち、DDD、リポジトリパターンですが、私はEntity Frameworkを使いたいです。

インターフェースではIQueryableを返しますが、Entity Frameworkでは代わりにObjectQueryを返すべきですか? - LINQを使用します。

また、storedfrontの例では、次のようになります。IQueryable <Category> GetCategories();

またMVCストアでは、Categoryクラスは構築されたエンティティクラス(標準クラス)でしたが、Entity Frameworkではこれらのクラスはオブジェクトコンテキストであらかじめ作成されています - そうではありませんか?

だから私はそれらを構築する必要がありますか?

私は少し混乱しています。誰かが役に立つ例やコードを持っていればそれは本当に役に立つでしょう。

私が言うように、私はlinq2sqlを使ってThe MVC storefrontからのビデオを見ました、しかし、本当にEntity Frameworkを使いたいです。

何か案は?

ありがとう

鍛冶屋

人気のある回答

私はあなたの質問に一つずつ答えてみましょう:

リポジトリ ObjectQueryではなく IQueryable <T>を返すべきです。その理由は、リポジトリパターンの目的はデータストアの詳細を抽象化することにあるからです。これはあなたがあなたのコントローラを単体テストするときあなたがモックリポジトリを代用するようなことをすることを可能にします。リポジトリにObjectQueryを返させるのであれば、Entity Frameworkを抽象化する必要はありません。別の言い方をすると、あなたのリポジトリのユーザは、O / Rマッピングを行っているのがEntity Frameworkであることをできるだけ知らないでください。

スタックオーバーフローの段落テキストで大なり記号と小なり記号を使用するには、HTMLの場合と同様にエスケープする必要があります。

&lt;

コードブロック内でこれを行う必要はありません。コードブロックでは、小なり記号または大なり記号を入力するだけです。



Related

ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ