Molto spesso abbiamo la necessità di scoprire quale sia il tipo base di una entity. Il metodo più semplice è quello di sfruttare la reflection. Lo svantaggio derivante dall'uso della reflection è rappresentato dalla sua estrema lentezza. Per velocizzare le performance possiamo sfruttare i metadati di Entity Framework in quanto la entity è mappata nell'EDM.
In questo snippet vediamo come ottenere la classe base Persona di una entity Manager.
using (var ctx = new MyContext()) { var item = ctx.MetadataWorkspace.GetItem<EntityType>( "Model.Manager", DataSpace.OSpace); //baseType contiene il tipo Persona var baseType = item.BaseType; }
Accedere ai metadati velocizza notevolmente performance rispetto all'uso della reflection quindi ne consigliamo fortemente l'uso.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Esecuzione condizionale dei template nelle pipeline YAML di Azure DevOps
Creare un web server locale con LiveReload
Migrare le configurazioni di una Web App Azure verso App Configuration
Navigazione sfruttando i fragments con Angular
Introdurre la security nelle best practice di (Azure) DevOps
Effettuare l'upload di un file da Blazor su Azure Blob Storage
A quick tour around Azure Dev Spaces
Creare due extension method per serializzare un oggetto in JSON e viceversa utilizzando la libreria System.Text.Json
Distribuire applicazioni ASP.NET Core con AWS Elastic Beanstalk
Mappare l'ereditarietà di una gerarchia di oggetti usando il TPT in Entity Framework Core 5
Reset della password di una Azure Virtual Machine
Utilizzare le JavaScript Resize Observer API per rispondere ai cambiamenti di dimensione di un oggetto HTML
I più letti di oggi
- Blazor Conference 2021 - Online
- Track 1: @dbochicchio e @cristiancivera con 'Blazor for absolute beginners'Track 2: @apomic80 con 'Dynamic UI with Blazor WebAssembly'Track 3: #aspilive Seguici live su => https://aspit.co/BlazorConf-21
- Track 1: @GiampaoloTUCCI con 'Progressive Web Apps with Blazor'Track 2: @dottor con 'Blazor Tips&Tricks'Track 3: #aspilive Seguici live su => https://aspit.co/BlazorConf-21
- Un datagrid con ordinamento con ASP