Ich bin neu im Repository Pattern und nachdem ich viel im Internet gelesen habe, habe ich ein grobes Verständnis von dem, was vor sich geht, aber es scheint einen Konflikt von Ideen zu geben.Repository-Muster - POCOs oder IQueryable?
Eines ist, was das IRepository zurückgeben sollte.
Ich möchte in ONLY Pocos umgehen und so würde ich für jedes Aggregat Wurzel eine IRepository Implementierung haben, etwa so:
public class OrangeRepository: IOrangeRepository
{
public Orange GetOrange(IOrangeCriteria criteria);
}
wo IOrangeCriteria zu finden, eine orangefarbene eine Reihe von Argumenten spezifischen nimmt.
Die andere Sache, die ich habe, ist eine Reihe von Daten Back-Ends - deshalb habe ich in diesem Muster in erster Linie. Ich stelle mir vor ich werde eine Implementierung für jeweils, zB
OrangeRepositoryOracle, OrangeRepositorySQL, OrangeRepositoryMock etc
Ich möchte es offen halten, so dass ich EF oder NHibernate verwenden könnte - wieder, wenn meine IOrangeRepository Angebote in POCOs dann I würde dies im Repository selbst kapseln, indem ein OrangeRepositoryNHibernate usw. implementiert wird.
Bin ich auf den richtigen Linien?
Dank
EDIT: Danke für das Feedback, ich habe jemand nicht anders diese Ideen aus zur Zeit auf die Beine, so dass es zu schätzen wissen!