Чӣ гуна Entity Framework иҷро мекунад намоиши синфҳои меросии C# дар сохтори ҷадвалҳои базаи маълумот?
sobes.tech AI
Ҷавоб аз AI
Entity Framework чанд стратегияи гуногуни харита кардани меросхӯрии синфҳои C# ба ҷадвалҳои базаи додаҳоро дастгирӣ мекунад:
-
Table Per Hierarchy (TPH) — ҳамаи синфҳо ва хусусиятҳои онҳо дар як ҷадвал бо сутуни иловагии дискриминатор, ки намоиш медиҳад, ки навъи объект чист, нигоҳ дошта мешаванд.
-
Table Per Type (TPT) — барои ҳар як синф ҷадвале алоҳида сохта мешавад, ки дар он ҷадвалҳои фарзандон танҳо майдонҳои иловагӣ доранд ва робита бо синфи асосӣ тавассути калиди хориҷӣ анҷом меёбад.
-
Table Per Concrete Class (TPC) — барои ҳар як синфи мушаххас ҷадвале алоҳида сохта мешавад, ки ҳамаи майдонҳоро дар бар мегирад, аз ҷумла онҳое, ки мерос гирифта шудаанд.
Масали TPH:
public abstract class Animal { public int Id { get; set; } } public class Cat : Animal { public int Lives { get; set; } } public class Dog : Animal { public string Breed { get; set; } }
// Дар базаи додаҳо як ҷадвали Animals бо сутунҳои Id, Name, Lives, Breed ва Discriminator хоҳад буд.
Интихоби стратегия вобаста ба талаботи иҷроиш ва сохтори додаҳо мебошад.