Sobes.tech
Junior — Middle

Чӣ гуна Entity Framework иҷро мекунад намоиши синфҳои меросии C# дар сохтори ҷадвалҳои базаи маълумот?

sobes.tech AI

Ҷавоб аз AI

Entity Framework чанд стратегияи гуногуни харита кардани меросхӯрии синфҳои C# ба ҷадвалҳои базаи додаҳоро дастгирӣ мекунад:

  1. Table Per Hierarchy (TPH) — ҳамаи синфҳо ва хусусиятҳои онҳо дар як ҷадвал бо сутуни иловагии дискриминатор, ки намоиш медиҳад, ки навъи объект чист, нигоҳ дошта мешаванд.

  2. Table Per Type (TPT) — барои ҳар як синф ҷадвале алоҳида сохта мешавад, ки дар он ҷадвалҳои фарзандон танҳо майдонҳои иловагӣ доранд ва робита бо синфи асосӣ тавассути калиди хориҷӣ анҷом меёбад.

  3. 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 хоҳад буд.

Интихоби стратегия вобаста ба талаботи иҷроиш ва сохтори додаҳо мебошад.