Hai 2 scelte fondamentali qui:
Prima il codice:
Progetta i tuoi modelli e "cablali" alle tue procedure che hai definito manualmente.
In primo luogo il database:
Punta l'EF al tuo DB e i modelli verranno creati per te usando il tuo schema. Puoi sempre chiamare le tue procedure personalizzate usando le classi Helper, ecc. Passeresti il modello EF ed estrarresti gli attributi necessari.
Personalmente, preferisco codificare prima semplici oggetti POCO e collegarli come meglio ritengo. Questo ti dà la massima flessibilità, tuttavia può sfuggire di mano se non stabilisci prima un'architettura e ti attieni ad alcuni schemi di governo.
Per quanto riguarda le prestazioni per i sistemi ad alto volume, simili agli approcci MVC della piastra della caldaia Ruby-On-Rails possono diventare ingombranti man mano che crescono. L'uso di procedure efficienti per CRUD vincerà sempre su SQL dinamico.