Sto usando EF Core 2.2 con ASP.net MVC Core 2.2.
Ho un'entità con una matrice List che non viene archiviata nella tabella. Ho pensato che avrebbe scritto un elenco di chiavi esterne per gli oggetti nell'array, ma non sta succedendo. Cosa sto dimenticando?
public class ProjectModel
{
[Key]
public int ID { get; set; }
public List<MyObject> ListOfObjects { get; set; }
}
public class MyObject
{
[Key]
public int ID { get; set; }
[Required]
public string Name{ get; set; }
}
Codice in cui si stanno aggiungendo e salvando:
MyObject cm = MethodToGenerateObject();
if(pm.ListOfObjects == null)
{
pm.ListOfObjects = new List<MyObject>();
}
pm.ListOfObjects.Add(cm);
_context.Entry(pm).State = EntityState.Modified;
try
{
await _context.SaveChangesAsync();
}
catch (DbUpdateConcurrencyException)
{
throw;
}
Ma nessun dato MyObject viene salvato nel database. Perché?
Grazie a @Sam, ho cercato le proprietà di navigazione e ho trovato questa guida utile: https://www.learnentityframeworkcore.com/conventions/one-to-many-relationship
il primo a molti esempi di relazioni mi ha aiutato a risolvere il mio problema.