問題タブ [repository-pattern]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2050 参照

wpf - MVVM (WPF) アプリ内のリポジトリ パターンを介してサービスを呼び出す方法は?

基本的にインターフェイス、サービス、およびデータアクセスを備えたasp mvcアプリの作成に成功しました-別名リポジトリパターン..

MVVM 構造化 WPF アプリから私のサービス (私のリポジトリ パターン) を呼び出す最良の方法は何でしょうか..

私が見たものから.. wpfのモデルでは、モデルからサービス(リポジトリパターン)を呼び出し、ビューに表示するためにビューモデルにデータを返すと思いますか??

このモデルはシンである必要があります。つまり、コードがほとんどなく、サービスを呼び出すだけです..処理のためにビューモデルにデータを返すか、モデルがリポジトリサービスを呼び出して、ビューモデルに戻る前にモデルで処理を行う必要がありますか??

私が設計している新しい WPF MMVM アプリの領域で自分の WORKING リポジトリ パターンをどのように使用できるか少し混乱しています...

何か案は?

ありがとう

0 投票する
2 に答える
4420 参照

c# - 例外がスローされても HttpContext.Current は破棄されますか?

私が尋ねる理由は、特定の ORM テクノロジに関連する依存関係をリポジトリに注入する必要なく、リポジトリが透過的にアクセスできるように、コレクションがなどのオブジェクトHttpContext.Current.Itemsを配置するのに適しているように思われるためです。これにより、リポジトリは、実際に変更を永続化するという追加の責任を負うか、引き受けるかを決定できます。IDisposableDataContextUnitOfWork

例えば:

ページ:

リポジトリ:

もちろん、null をチェックし、コレクションDataContextで利用できない場合は取得するために必要な手順を実行します。HttpContext.Current.Items

したがって、上記のコードが与えられた元の質問に戻りますHttpContext.Current例外がスローされた場合でも、Items コレクションに含まれるオブジェクトと一緒に破棄されますか?

0 投票する
1 に答える
1443 参照

repository-pattern - リポジトリ パターンを実装する場合、ルックアップ値/テーブルは独自のリポジトリを取得する必要がありますか?

BISDMの修正版に基づいて、いくつかのデータベース エンティティ用の RESTful サービスを作成しています。これらのエンティティの一部には、以下に示すようにルックアップ テーブルが関連付けられています。

変更された BISDM スキーマのスニペット

データの永続化と取得を明確に分離するために、リポジトリ パターンを使用することにしました。ただし、ルックアップ ( entity ではなく) をリポジトリでどのように表現する必要があるかはわかりません。

ルックアップは独自のリポジトリ インターフェイスを取得する必要がありますか、関連付けられたエンティティと「共有」する必要がありますか、それとも汎用の ILookupRepository インターフェイスが必要ですか?

現時点では、これらのルックアップは読み取り専用です。ただし、サービスを介してルックアップを編集したい場合があります。

ちなみに、この質問は、ルックアップ テーブルと RESTful Web サービスに関する別の質問に関連しています。

0 投票する
4 に答える
774 参照

c# - linq を使用したリポジトリ パターン

生成された 2 つの異なる linq コードを使用する場合、Rob Conery が [MVC Storefront][1] で示しているいわゆる「リポジトリ パターン」を実装するにはどうすればよいですか? Fredrik Normen がWhat Purpose does the Repository Pattern has? で説明しているように、実際のリポジトリ パターンを実装する必要がありますか? ? 問題は、LINQ が提供する優れた機能のいくつかを「リポジトリ」から渡して、後で使用できるようにすることです。そのため、Fredrik が説明したように、必要でない場合は実際のリポジトリ パターンを実装したくありません。

今私の問題に。MySql、Oracle、PostgreSQL の Linq プロバイダーである [dblinq ][3] をダウンロードしました。私のプロジェクトでは、MySQL と SQL(microsoft) の LINQ コードを生成しました。問題は、どちらも同じ名前のクラスを生成する必要があるが、内容が多少異なることです。「リポジトリパターン」のアイデアのように、これを名前空間などで実装して、両方を使用できるようにすることはできますか? 言語テーブル SQL の例

MySQL

0 投票する
3 に答える
2012 参照

repository-pattern - リポジトリからのリポジトリの呼び出し

カタログとユーザーの2つのリポジトリがありますが、ユーザーリポジトリからカタログリポジトリ内のメソッドを呼び出す必要がある状況があります。これは良い習慣ですか、それともより良い方法がありますか?

0 投票する
2 に答える
458 参照

asp.net-mvc - ASP.NET MVC - モデルの決定: 設計方法は?

これは、非常に一般的なデータベースを使用するエンタープライズ アプリケーションに関するものです (すべてのオブジェクトは、データベース内のデータを使用して識別され、国際化/グローバル化/ローカライズされています)。

  • リポジトリ パターンのモデルを作成し、DB アクセス (LINQ2SQL または EF) の別のモデルを作成 (1:1 生成) し、後でそれをリポジトリ モデルのデータ アクセス レイヤーとして使用しますか?
  • L2S/EF/NHibernate モデルを直接使用し、モデルを DB にマッピングして永続化レイヤーを開くだけですか?

このデュアル モデルのアイデア (リポジトリ パターン) は、L2S/EF モデルをデュアル モデル環境で直接使用する場合に、動的にスタック可能な LINQ 検索クエリを可能にする問題をポップアップ表示しますか?

お知らせ下さい。

0 投票する
2 に答える
1604 参照

asp.net-mvc - Asp.net Mvc:LINQtoSQLを使用したモデルクラスの作成

Asp.net Mvcを学習しようとしているので、 このチュートリアルを試しています。

彼らは、リポジトリパターンと、Linq to Sqlを直接呼び出すのではなく、別のデータアクセステクノロジに簡単に変更できることについて話します。

コントローラクラス内でLINQtoSQLを使用すると、将来的にデータアクセステクノロジを切り替えることが困難になります。たとえば、Microsoft LINQからSQLの使用から、データアクセステクノロジとしてのMicrosoftEntityFrameworkの使用に切り替えることができます。その場合、アプリケーション内のデータベースにアクセスするすべてのコントローラーを書き直す必要があります。

注:このチュートリアルを読む前に、インターフェースがどのように機能するかを実際に理解したことはありませんでしたが、それでも100%明確ではありません。私は今それをクラスのある種の「テンプレート」として見ています。

Linq to Sqlの使用に成功した後、これについて多くのことを読んでいるので、Ado.netEntityFrameworkを試してみるといいと思いました。リポジトリパターンを使えば簡単に切り替えられるとのことで、テストしてみようと思いました。

私の質問は、Ado.net EFに変更するにはどうすればよいですか?

これは私がすべきだと思うことです。

  • Movie.edmxファイルを追加して構成します(ムービーテーブルを追加します)。
  • IMovieRepositoryに基づいて新しいクラスを作成し、MovieEFRepositoryと呼ぶ場合があります。
  • コントローラコンストラクターのパラメーターをMovieEFRepositoryに変更します。これは私が最初に奇妙だと思うことです。チュートリアルでは、リポジトリを使用しないと、他のデータソースに変更した場合にすべてのコントローラーを変更する必要があると言われているためです。MovieRepositoryクラスを指定しているので、とにかくすべてのコントローラーを変更する必要はありませんか?
  • 私がする必要があると思う最後の調整は、ビューを変更することです。LinqtoSqlデザイナによって作成されたProductクラスを使用しているためです。これをどうやってやるのかわかりません。dbmlファイルに依存しないオブジェクトを使用する必要があったと思いますか?

Asp.net Mvcを少し単純化したビューがある場合は、ご容赦ください。私はAsp.netWeb開発に大きな関心を持っているWebデザイナーです。

0 投票する
1 に答える
755 参照

repository-pattern - UnitOfWork パターンとアトミック操作

Repository と UnitOfWork のパターンを正しく実装したかどうか 100% 確信があるわけではありませんが、これがどのように機能するかはわかりません。

たとえば、Apple と Orange という 2 つのオブジェクトがあります。

Apple は、次のように OrangeID を介して Orange に参加しています。

新しい Apple と新しい Orange を作成し、ID リンクを適切に設定したいと考えています。しかし、私には問題があります。Orange をデータベースに保存するまで、OrangeID はわかりません。

したがって、これは次のことを意味します。

上記の外にあるトランザクションがない限り、これはアトミック操作ではありません。しかし、それが UnitOfWork が処理するものだと思いましたか? または、データベースへの書き込み時に UnitOfWork.Commit() が適切な値を割り当てる必要がありますか?

ヘルプ/ヒントをいただければ幸いです。ダンカンに感謝します

0 投票する
1 に答える
1998 参照

php - 集計とリポジトリ。集計を決定する方法は?

私は最近、クライアント コードが関係するカーペットの下にある永続性のすべての詳細をブラッシングする方法として、リポジトリ パターンに注目しています。周りを読んでいると、リポジトリは単純なクラスだけでなく、[通常は?] 集約を担当している/できるようです。

Postsを定義するクラスとCommentsを定義する別のクラスを持つことができるので、これは私には理にかなっています。この 2 つは非常に密接に関連しているため、これは集約の理想的な候補になります。しかし、UsersクラスとそのPostsとの関係をどのように表現すればよいでしょうか?

Posts/Comments集計でユーザーを集計すること、またはユーザーを単独で保持し、古き良き参照を介して関連付けを行うことは理にかなっていますか?

Google を使用して自分で答えを探してみましたが、見つけた多くの例は単なるスタンドアロンです。つまり、Posts/CommentまたはOrderOrderLineなどです。他の関連するクラスがどのように適合するかを示すものは見つかりません。

私はこれを特定の何かに適用しているわけではありませんが、PHP や Java/C# はおそらくこれらのアイデアを使用する領域になるでしょう。いずれにせよ、私は逃げ出してモンスターを作成する前に、これらのアイデアやコンセプトのいくつかを探求し、理解しようとしています. :)

お時間をいただきありがとうございます。

0 投票する
5 に答える
2432 参照

c# - EntityFramework を使用するためのパターン?

Entity Framework を使用する代替パターンは何ですか?

私が知っているものは次のとおりです。

  1. "Plain" EntityFramework - 別名 Unity of Work

    p>

  2. リポジトリ パターン

    p>

  3. ほかに何か ?
  4. ?