MVC3で作業単位パターンを実装しようとしています。
私は持っています:
MVCサービスレイヤー(BLL)
リポジトリレイヤー
複数の種類のデータベース
サービスレイヤーがIOCコンテナによってIUnitOfWorkを渡されるようにしたい。(これは簡単で、この質問の一部ではありません)。
したがって、私のサービスレイヤーはこれを行います:(注:これは擬似コードです)
(using unitOfWork)
{
ProductSqlRepository.Update();
PersonOracleRepository.Update();
IUnitOfWork.Commit();
}
私が見つけることができるすべてのサンプルはEFを使用しています。私のリポジトリの1つはEFを使用しているかもしれませんが、他のリポジトリは使用していないかもしれません。
私の質問は、異なるタイプのデータベース(つまり、EF、Oracle、その他)の上にある可能性のある複数のリポジトリ間で作業単位パターンを使用できるかどうかです。
したがって、SQLデータベースとOracleデータベースへの更新を1つの作業単位の呼び出しでラップしたい場合は、それを行う方法が作業単位です。
私が述べたように、私が見つけることができるすべての例は100%EFソリューションのためのものであり、私は混ぜ合わせて一致させる必要があります。
ありがとうRuSs