Open plaursen opened 3 years ago
Hvis det fungerer som der står på dåsen, så burde det være en oneliner:
...ellers kan vi måske starte med at se på vores brug af FlightContext.
En DbContext cacher åbenbart selv så længe den eksisterer, så vi skal nok se lidt på hvordan vi opretter dem.
Vores SQL brug er ret dyr p.t.
Vi kan formodentlig spare en del (kr og responstid) ved at implementere en write-thru cache.
Første tanke er (for at minimere omfanget af ændringer): 1: Implementer en 'wrapper' med samme interface som DbContext (eller den del vi bruger) : CachedDbContext 2: Definer et interface ISoilable (eller noget andet vittigt) som har en property Dirty. 3: Implementer en 'wrapper' med samme interface som DbSet (eller den del vi bruger) : CachedDbSet, hvor T implements ISoilable
4: Reimplementer FlightContext som en CachedDbContext, som indeni bruger CachedDbSet
5: Alle typer som bruges i CachedDbSet skal have property setters som markerer objektet som dirty.
6: Brug CachedDbContext i stedet for DbContext
Der er sikkert nogle ting omkring opstart og migrering, som jeg ikke har opdaget kompleksiteten af endnu :)
Der er nok en anelse omfattende, men et par dage med regnvejr burde kunne give en ide om hvor slemt det er.
Og: check lige om noget lignende allerede findes :)