2010-12-29 12 views
0

私は、リポジトリパターン、作業ユニットなどを含むドメイン駆動型開発とFowlerの本とEvansを読むことについてもっと学びたいと思っています。私はBL(ドメイン)からデータレイヤのロジックと構造を分離するためにアプリケーションをセットアップしたいと考えています。リポジトリパターンとDDDでLinq to SQL

私はLINQ to SQLを使用していますが、これは単にDtoとは関係のないテーブル間の密接に結合したオブジェクトを作成していることを前提としています。 )と私のBLロジック...それは正しいですか?

答えて

2

あなたの前提は正しいです。

LINQ to SQLは、リレーショナルDBをObjectsにマップするだけです。Entity FrameworkはnHibernateと同様に多くの機能を提供します。あなたが行っているドメインオブジェクトをマップしたら、リポジトリと作業単位などを作成して、DDD行を右下に置くことができます。

チェック一部のヘビーデューティーDDDの良さのために出て、このアクション:

microsoftnlayerapp

+0

おかげで... OKしかし、ドメインオブジェクトは、あなたのBLクラス権はありますか?ビジネスレイヤクラス/オブジェクトのもう一つの言葉...それをドメインオブジェクト/クラスと呼んでいます。あなたがLINQ to SQLルートに行くつもりなら、マッピングはあなたによって行われなければならないでしょう...カスタムコードの権利? – PositiveGuy

+0

はい - ドメインオブジェクト==ビジネスオブジェクト - あなたの周りにあなたのドミノを建てる基本的なものです - 従業員や注文や顧客などのもの...あなたがLinq to SQLルートに行く場合、ドメイン/ビジネスクラスはあなたのために生成される - 私はエンティティフレームワークでは、あなたが簡単に拡張することができ、IIRC Linq SQLに同じことを行うことができますPOCOオブジェクトを作る素晴らしい仕事をすることを知っている。 –

+0

DLクラス(DTO)、BLクラス(ワークフローロジック)、プレゼンテーションレイヤーがあるので待ちます。一般的に言えば、ここで何を話していますか?それはあなたのBLですか?そして、なぜEntityフレームワークがBLオブジェクトを自動作成するのですか...彼らはあなたのPLでそれを使用するために必要なビジネスドメインとワークフローロジックにとって非常にカスタムです...あなたが言ったことを繰り返すことができます...私は少し混乱しています。 – PositiveGuy