Ich suche hier nach einer Best-Practice-Antwort.
Angesichts der Tatsache, dass Best Practices für die Interaktion mit implementierten Klassen IDisposable
über die folgende Using
Anweisung erfolgen: Was ist die Best Practice für die Verwendung von EF Lazy Loading mit MVC?
Beispiel für eine Controller-Methode:
<HttpGet>
Public Function Schedule(ByVal id As Int64) As ActionResult
Dim model As Schedule = Nothing
Using database As dataContext = New dataContext
model = (From s In database.Schedules Where s.ScheduleID = id Select s).FirstOrDefault
End Using
Return View(theSchedule)
End Function
In diesem Beispiel funktioniert das verzögerte Laden nicht, da die Datenbank [dataContext] zum Zeitpunkt des Eintreffens des Modells in der Ansicht entsorgt wird.
Die Frage ist also:
Was sind die besten Methoden für die Verwendung des verzögerten Ladens in MVC? Wie stellen Sie sicher, dass Ihr Datenbankkontext ordnungsgemäß entsorgt wird und keine Speicherlecks verursacht werden?
quelle
using
Anweisung gut verhält, es viel schöner macht , den DBContext auf Wunsch in Abhängigkeit zu injizieren.