1

私はいくつかの同様の質問を見てきましたが、私に直接当てはまるものは見当たりませんでしたので、これが重複している場合はご容赦ください.

懸念事項を分離するために、ロジックを使用してビジネス オブジェクトを .dbml ファイルの LINQ to SQL データ オブジェクトにマップしようとしています (これはかなり新しいことです)。ただし、私のビジネス オブジェクトは、対応する LINQ2SQL オブジェクトについて知る必要があるように見えます。xml マッピング ファイルを使用して POCO を使用しようとすることに関するこの記事を読みました。追加のテーブルを作成する必要がある対多の関係。

ビジネス オブジェクトを使用するコードがデータベースについて何も知る必要がないように、ビジネス ロジックでデータ アクセスをかなりうまくカプセル化できます。ビジネス層オブジェクトを変更するか、別のデータ プロバイダー用に新しいオブジェクト (同じインターフェイスを実装する) を作成しない限り、DAL を交換することはできませんでした。

これらのレイヤーを分離するにはどうすればよいですか?

4

1 に答える 1

2

どういうわけかLINQ to SQLに縛られているかどうかはわかりませんが、達成しようとしているのはNHibernateのデフォルトです。NHibernate を調べて、LINQ to SQL と戦うよりも切り替える方が簡単かどうかを確認することをお勧めします。

ツールと戦うことは、ほとんどの場合、悪い考えであることがわかりました。

于 2009-12-11T15:59:46.607 に答える