Frage

ich in Entity Framework verstehen Sie können Beziehungen angeben, die mit werden müssen verbunden Neue :

Product firstProduct = 
       db.Product.Include("OrderDetail").Include("Supplier").First();

Aber wir haben das gegenüber Problem, dass eine einfache LINQ-Anweisung wird immer machen zu viele JOIN auf dem SQL-Server.

So wie tun wir das Gegenteil, das heißt sagen Entity zu nicht tun, um jeden tiefen Laden von verknüpften Tabellen, wenn es alle Aufträge bekommt, so dass auf dem SQL-Server führt sie:

SELECT * FROM Orders
War es hilfreich?

Lösung

Das oft Entity Framework geht voran und lädt grundlegende Beziehung Informationen zu.

Es tut dies, so kann der Anwender Updates leicht machen, ohne die einzigartige Concurrency Politik für Beziehungen des EF zu verletzen.

Sie können dies ausschalten, jedoch durch eine nicht-Tracking-Abfrage zu tun.

Siehe Tipp 11 - Wie Beziehung Spanne für weitere Informationen für weitere Informationen

vermeiden

Alex

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