Come sapete, gli sviluppatori per lo più prendono in giro la relazione tra tabelle invece di usare relazioni fisiche tra tabelle (sì, la linea tracciata da una tabella a un'altra se si mette un vincolo di chiave esterna sulla colonna).
Ma credo che Entity Framework non funzioni correttamente se le relazioni fisiche non ci sono per le proprietà di navigazione.
Quindi, c'è un modo per aggirare?
Le mie classi:
public class Phones
{
public int ID { get; set; }
public string Model { get; set; }
public string Manufacturer { get; set; }
public List<Users> Users { get; set; }
}
public class Sims
{
public int ID { get; set; }
public string Code { get; set; }
}
Questo crea una relazione 1-M da Utente -> Sim.
Ma cosa succede se cancello il vincolo di chiave esterna e lo lascio com'è, come funzioneranno le proprietà di navigazione?
In questo caso, è meglio rimuovere i riferimenti da entrambe le classi e gestire le relazioni manualmente al di fuori di queste classi:
public class Sims
{
public int ID { get; set; }
public string Code { get; set; }
//public User User { get; set; }
public int UserID { get; set; }
}