Lazy loading in .NET core

Geschreven door: op donderdag 19 januari 2017

Leestijd: 1 minuut

Lazy loading in .NET core

.NET core is de platformonafhankelijke .NET-implementatie van Microsoft. .NET-core-applicatie kunnen bijvoorbeeld worden geactiveerd op Linux-omgevingen, waarvan mogelijke effecten zijn: lagere hostingkosten en vergroten van schaalbaarheid oplossing.

Er zijn echter een aantal belangrijk verschillen, bijvoorbeeld in de structuur van de gegenereerde projecten, of de NuGet-packages die ondersteund worden.

Een van de andere verschillen tussen .NET Framework en .NET Core is dat het laden van gekoppelde database-entiteiten via lazy loading nog niet ondersteund wordt in .NET core. Een voorbeeld van gekoppelde entiteiten is:


public class BlogPost{

   public virtual ICollection<Comment> Comments {get; set;}

}

Wanneer in .NET Framework een databasecontext geopend is, kan vanuit een blogpost worden naar comments op volgende wijze:


Var blogPost = _context.blogPosts.Find(Id);
Var comments = blogPost.Comments;

Comments bevat nu een collectie met gekoppeld comments. In het geval van .NET Core is comments echter nog steeds null en dat is omdat lazy loading nog niet wordt ondersteund. Om de gekoppelde comments in te laden en te gebruiken, zijn er twee oplossingen:

Via Eager Loading:


var blogPost = _context.blogPosts.Include("Comments").Single(b => b.Id == Id);

Via Explicit Loading:


context.Entry(blogPost).Collection(b => b.Comments).Load();

Of als de koppeling naar een enkele entity is:


context.Entry(blogPost).Reference(b => b.Author).Load();

Op deze manier zorg je ervoor dat gekoppelde entiteiten ingeladen worden en gebruikt kunnen worden in je .NET Core-applicatie.


Andere blogartikelen

  • Overeenkomsten tussen Growth Hacking en UX design

    Geschreven door: op zondag 13 september 2020

    Laten we beginnen met wat Growth hacking is, Growth hacking zijn experimenten voor oplossingen die groeiproblemen moeten oplossen. Dit is een nieuwe marketing aanpak die met name wordt gedreven door d ...

    Bekijk het artikel »
  • B2B SEO en Geoptimaliseerde Afbeeldingen

    Geschreven door: op woensdag 12 augustus 2020

    In een tijd waarin 27% van het koopproces van B2B kopers met eigen online research wordt doorgebracht is het essentieel om een goed vindbare website te hebben. Afbeeldingen kunnen, indien geoptimalise ...

    Bekijk het artikel »
  • Prospects zoeken B2B

    Geschreven door: op woensdag 12 augustus 2020

    Het zoeken van B2B prospects is een uitdaging voor elk bedrijf. Met name kwalitatieve B2B prospects.Door vooraf onderzoek te doen naar bedrijven die voldoen aan je criteria en je marketing hierop aan ...

    Bekijk het artikel »
Bel 072 5345 888
Meer dan 40 bedrijven vertrouwen op ons
Allrig is de alles in een leverancier binnen de energie-industrie
AOC is een toonaangevend wereldwijd bedrijf actief in de verkoop van kwaliteitsharsen
ERIKS is een toonaangevende en innovatieve leverancier aan de procesindustrie en aan machinebouwers, die zowel de rol van specialist als die van brede MRO-leverancier vervult
Industrieel dienstverlener Heinen & Hopman Engineering uit Bunschoten is dé wereldwijde specialist op het gebied van klimaatbeheersing
Handicare is een internationale organisatie die ouderen helpt om hun dagelijks leven gemakkelijker te maken door het produceren van hoogwaardige trapliften
Op de hoogte blijven?

Meld u aan voor de gratis nieuwsbrief om op de hoogte te blijven van onze activiteiten