Je teste le scénario suivant (code ci-dessous): créer un centre commercial, avec des magasins, avec des caissiers, avec des caisses et des personnes qui l'exploitent.Entity Framework: comment résoudre le tableau dans le tableau
J'ai donc créé les classes suivantes
- Table Mall
- Tableau Boutique
- Tableau cashdesk
- Tableau Personne
Classes de base avec un ID et un nom. Puis j'ai besoin d'une classe dérivée de Person
étant PersonCashier
ou PersonCustomer
.
Comme tout est lié, j'ai besoin de créer des tables d'intersection pour les scénarios plusieurs à plusieurs.
J'ai créé les tables d'intersection suivantes:
- Le centre commercial contient des magasins: MallShop
- La boutique contient caisse: MallShopCashDesk
- Et le cashdesk contenant caissiers: MallShopCashDeskPersonCashier
Cela ne me semble pas juste. Quelqu'un peut-il m'aider sur une meilleure pratique
public class Mall
{
public int Id { get; set; }
[Required]
[MaxLength(100)]
public string Name { get; set; }
[Required]
public int NumberOfShopSpaces { get; set; }
}
public class Shop
{
public int Id { get; set; }
[Required]
[MaxLength(100)]
public string Name { get; set; }
}
public class CashDesk
{
public int Id { get; set; }
[Required]
public string Name { get; set; }
}
public class Person
{
public int Id { get; set; }
[Required]
public string FullName { get; set; }
[Required]
public string Gender { get; set; }
}
public class PersonCashier : Person
{
[Required]
public int ShopId { get; set; }
public virtual Shop Shop { get; set; }
}
Ce sont les classes de base. Comment dois-je ajouter un magasin à un centre commercial, une caisse à un magasin, et un caissier à une caisse? (Je l'ai essayé beaucoup, mais affichant le code serait faire le look question comme des spaghettis)