.Include () vs .Load () Leistung in EntityFramework

Wenn Sie eine große Tabelle abfragen, in der Sie später im Code auf die Navigationseigenschaften zugreifen müssen (ich möchte ausdrücklich kein verzögertes Laden verwenden), ist die Leistung besser.Include() oder.Load()? Oder warum den einen über den anderen benutzen?

In diesem Beispiel haben alle eingeschlossenen Tabellen ungefähr 10 Einträge und die Mitarbeiter ungefähr 200 Einträge, und es kann vorkommen, dass die meisten davon trotzdem mit include geladen werden, da sie mit der where-Klausel übereinstimmen.

Context.Measurements.Include(m => m.Product)
                    .Include(m => m.ProductVersion)
                    .Include(m => m.Line)
                    .Include(m => m.MeasureEmployee)
                    .Include(m => m.MeasurementType)
                    .Where(m => m.MeasurementTime >= DateTime.Now.AddDays(-1))
                    .ToList();

oder

Context.Products.Load();
Context.ProductVersions.Load();
Context.Lines.Load();
Context.Employees.Load();
Context.MeasurementType.Load();

Context.Measurements.Where(m => m.MeasurementTime >= DateTime.Now.AddDays(-1))
                    .ToList();

Antworten auf die Frage(6)

Ihre Antwort auf die Frage