私は、DDD in .NET に関する Tim McCarthy のすばらしい本を読んでいます。ただし、彼のサンプル アプリケーションでは、基礎となるデータ アクセスに SqlCE を使用しており、SQL インラインを手作業で作成しています。
Entity Framework を活用するためのいくつかのパターンを試してきましたが、IRepository linq クエリを基になるデータ アクセス レイヤーに正確にマップする方法に行き詰まりました。
と呼ばれる具体的なリポジトリ実装があります。
public EFCustomerRepository : IRepository<DomainEntities.Customer>
{
IEnumerable<DomainEntities.Customer> GetAll(
Expression<Func<DomainEntities.Customer, bool>> predicate)
{
//Code to access the EF Datacontext goes here...
}
}
私の EF モデルでは、POCO エンティティを使用していますが、それでも、DomainEntity.Customer と DataAccessLayer.Customer オブジェクトの間にネイティブ マッピングはありません。
そのため、単にExpression<Func<DomainEntities.Customer, bool>> predicate
パラメータとして渡すことはできませんEFContext.Customers.Where(...);
Expression<Func<T, bool>> predicate
=>をマップする簡単な方法はありますか
Expression<Func<TOTHER, bool>> predicate
それとも、私はこれについてすべて間違っていますか?任意の提案/ポインタをいただければ幸いです。