Junior — Middle
Kā Entity Framework nosaka atbilstošo modeļa klasi, strādājot ar datu bāzi?
sobes.tech AI
Atbilde no AI
Entity Framework (EF) определяет соответствующий класс модели для таблицы базы данных на основе конфигурации модели, которая обычно задаётся в коде с помощью классов контекста (DbContext) и свойств DbSet<T>.
Основные способы сопоставления:
- По имени класса и имени таблицы: EF по умолчанию сопоставляет класс модели с таблицей, имя которой совпадает с именем класса (с учётом соглашений об именах).
- Через атрибуты (Data Annotations), например
[Table("TableName")], которые явно указывают имя таблицы. - Через Fluent API в методе
OnModelCreatingкласса контекста, где можно настроить соответствия между классами и таблицами, а также между свойствами и столбцами.
Пример:
public class MyContext : DbContext
{
public DbSet<User> Users { get; set; }
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<User>().ToTable("UsersTable");
}
}
public class User
{
public int Id { get; set; }
public string Name { get; set; }
}
Здесь EF знает, что класс User соответствует таблице UsersTable.
Таким образом, EF использует конфигурацию и соглашения для определения, какой класс модели связан с какой таблицей в базе данных.