Je hebt hier 2 fundamentele keuzes:
Code eerst:
Ontwerp uw modellen en "bedraad" ze tot uw procedures die u handmatig hebt gedefinieerd.
Database eerst:
Richt de EF op uw DB en er worden modellen voor u gemaakt met behulp van uw schema. U kunt altijd uw aangepaste procedures aanroepen met behulp van Helper-klassen enz. U zou het EF-model doorgeven en de benodigde attributen extraheren.
Persoonlijk geef ik er de voorkeur aan om eerste eenvoudige POCO-objecten te coderen en deze naar eigen inzicht aan te sluiten. Dit geeft je de meeste flexibiliteit, maar het kan uit de hand lopen als je niet eerst een architectuur vastlegt en je aan een aantal heersende patronen houdt.
Wat betreft prestaties voor systemen met een hoog volume, vergelijkbaar met Ruby-On-Rails boilerplate MVC-benaderingen kunnen onpraktisch worden naarmate ze groeien. Het gebruik van efficiënte procedures voor CRUD zal altijd winnen van dynamische SQL.