2012-04-23 13 views
4

私は奇妙な状況があります。私は視覚的にデータモデルを作成し、そこからデータベースを生成しました。このプロジェクトは、2つのプロジェクトによって参照されています。データベース接続なしのEntity Frameworkクラスの使用

  • ASP .NETアプリケーション。
  • WinFormsアプリケーション。

Webアプリケーションを介してデータベースとやりとりするためにWinFormsアプリケーションが必要な場合、ASP .NETアプリケーションはデータベースを直接処理します。

私はAPI.aspxというページを作成し、HTTP POSTを使用して値を送信し、結果をXMLで取得しました。

しかし、WinFormsアプリケーションではまだデータモデルクラスを使用する必要があるため、データベースオブジェクトを作成せずに問題を実行しています。

このシナリオではどのような戦略を使用するのがよいですか?

あなたは疎結合( See the Repository Pattern)を使用してコードを実装している場合

答えて

2

、その後、あなたは、実際のEFフレームワークにプラグインする準備ができるまで(またはメモリデータに)ダミーデータが返されます、データベースのスタブを作成することができます。

これは、一般的に懸念の明確な分離を作成することをお勧めし

+0

んEFようなシナリオのための任意の組み込みツールを提供しますか?私は、データベースのコンテキストやメモリの中でクラスを扱う際に、より柔軟に対応できるかどうかを調べるために、まずコードを調べようとしています。 –

+0

@RaheelKhanいいえ、このシナリオはORMを実際に抽象化します。しかし、本当に欲しければ、POCOをコンテキスト外で使用することができます。問題は、あなたがデータベースとやりとりしたいと思うところだけに来るだろう...ここでは、EFのコンテキストを嘲笑することについて私が素早くgoogleで見つけた記事がある:http://www.nogginbox.co.uk/blog/mocking- entity-framework-data-context –

+0

匿名のダウン者に。私の答えを適切に適応させるために、好きでないことを説明してください。 –

0

これはむしろ、Windowsフォームアプリケーションを持つよりも、SOAの実装のための候補者のように聞こえるのWebアプリケーションと直接通信します。

+0

はい、同意しますが、その抽象化は後の段階で行うことができます。これはプロトタイプです。 –

+0

また、デスクトップアプリケーションでオフラインモードもサポートする必要があります。 –

関連する問題