Entity Framework Core adotta delle convenzioni per scoprire i tipi da mappare in automatico sul database. Per iniziare, tutti i tipi che sono esposti tramite DbSet dal contesto sono stati esclusi. Se uno di questi tipi contiene delle navigation property, allora il tipo delle navigation property viene automaticamente mappato anche se non esposto da un DbSet.
Quest'ultimo comportamento è quello che vogliamo nella maggior parte dei casi, ma possiamo intervenire per modificarlo.
Utilizando l'API di mapping Ignore e passando il tipo da non mappare, Entity Framework automaticamente scarterà la classe dal mapping.
class MyContext : DbContext { public DbSet<Person> People { get; set; } protected override void OnModelCreating(ModelBuilder modelBuilder) { modelBuilder.Ignore<IgnoreMe>(); } } public class Person { public int Id { get; set; } public string Name { get; set; } public IgnoreMe IgnoreThisType { get; set; } } public class IgnoreMe { public int Id { get; set; } public DateTime Info { get; set; } }
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare i primary constructor di C# per inizializzare le proprietà
Effettuare chiamate con versioning da Blazor ad ASP.NET Core
Specificare il versioning nel path degli URL in ASP.NET Web API
Creazione di plugin per Tailwind CSS: espandere le funzionalità del framework dinamicamente
Utilizzare domini personalizzati gestiti automaticamente con Azure Container Apps
Determinare lo stato di un pod in Kubernetes
Utilizzare la libreria Benchmark.NET per misurare le performance
Utilizzare il trigger SQL con le Azure Function
Usare le variabili per personalizzare gli stili CSS
Recuperare un elemento inserito nella cache del browser tramite API JavaScript
Eseguire operazioni con timeout in React
Verificare la provenienza di un commit tramite le GitHub Actions