Nello script #463 abbiamo visto come mappare una tabella su più entity utilizzando il la tecnica di mapping Table-Splitting. Avendo due entity che rappresentano diversi campi sulla stessa tabella, dobbiamo modificare leggermente il nostro modo di persistere i dati. Riprendiamo il modello visto nello script #463.
public partial class PersonExtended
{
public int PersonId { get; set; }
public string Notes { get; set; }
public Person Person { get; set; }
}
public partial class Person
{
public int PersonId { get; set; }
public string FirstName {get; set; }
public string LastName {get; set; }
public PersonExtended PersonExtended { get; set; }
}Per inserire una persona, dobbiamo prima istanziare un oggetto di tipo Person, poi un oggetto di tipo PersonExtended e poi associare il secondo al primo tramite la proprieta PersonExtended come mostrato nel prossimo esempio.
var p = new Person{
FirstName = "Stefano",
LastName = "Mostarda",
PersonExtended = new PersonExtended
{
Notes = "note",
},
};
ctx.Add(p);
ctx.SaveChanges();Come si vede dal codice, le API di Entity Framework Core da usare per la persistenza sono sempre le stesse (Add e SaveChanges), quello che cambia è solo il modo di comporre gli oggetti.
Se non volessimo inserire le note, potremmo anche non impostare la proprietà PersonExtended e verrebbero inseriti solo i valori della classe Person.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Effettuare la ricerca di testo nascosto in una pagina web con Javascript
Gestione delle scrollbar dinamiche in HTML e CSS
Recuperare le subissue e il loro stato di completamento in GitHub
Configuratione e utilizzo .NET Aspire CLI
Semplificare i deployment con le label in Azure Container App
Utilizzo delle stepped value functions nel CSS
Abilitare il rolling update su Azure Functions flex consumption
Gestire gli errori nelle Promise JavaScript con try()
Gestione ciclo di vita in .NET Aspire
Definire il metodo di rilascio in .NET Aspire
Esporre workflow come server MCP con Azure Logic Apps
Creare comandi nella dashboard .NET Aspire




