Frage

Dies wird über eine Enterprise-Anwendung mit einer sehr allgemeinen Datenbank (alle Objekte werden unter Verwendung von Daten in der Datenbank identifiziert und internationalisiert / globalisierte / lokalisierte).

  • Erstellen Sie ein Modell für die Repository-Muster, dann machen (erzeugen 1: 1) ein weiteres Modell für DB-Zugriff (LINQ2SQL oder EF) und verwenden Sie die später als Repository-Modell Datenzugriffsebene
  • ?
  • Verwenden Sie einfach L2S / EF / NHibernate Modell direkt, Mapping-Modell an die DB und die Öffnung Persistenz-Schicht?

Werde diese duale Modell Idee (Repository-Muster) Pop-up-Probleme machen dynamische stapelbar LINQ Suche möglich abfragt, wenn sie direkt mit L2S / EF-Modell in einer Dual-Modellumgebung?

Bitte geben.

War es hilfreich?

Lösung

Solange Sie IQueryable Objekte in Ihrem Repository aussetzen, sollten Sie kein Problem haben, Abfragen in der Art und Weise Stapeln vor.

würde ich vorsichtig sein, für das Entity Framework verwenden, da verzögertes Laden nicht in der Art und Weise unterstützt wird Sie vielleicht erwarten. Linq to SQL wird ein träges Laden ohne Probleme verarbeiten.

Für weitere Informationen über ein träges Laden in der Entity Framework finden Sie unter:
http: / /www.singingeels.com/Articles/Entity_Framework_and_Lazy_Loading.aspx

Andere Tipps

Hier finden Sie aktuelle scharf Architektur .

In Bezug auf IQueryable von Ihrem Repositoryobjekte Rückkehr, ist es meiner Meinung nach, dass solche tun verwischt eine ordnungsgemäße Trennung von Bedenken in Ihrer Anwendung. Ich bin ganz mit IQueryable in Ihrer Datenzugriffsschicht für die Arbeit, wenn Sie aber beginnen Objekte als IQueryable Sie bieten die Möglichkeit, Rückkehr für Ihre Controller und / oder Ansichten mit den Datenzugriff zu starten einzumischen. Eine solche kann auch sogar negativ auf die Überprüfbarkeit Ihrer Anwendung auswirken.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top