Sobes.tech
Back to questions
Junior — Middle
69

Каким образом взаимодействуют ваше приложение и базы данных через ORM и как осуществляется управление моделями данных?

Answer from AI

sobes.tech AI

ORM (Object-Relational Mapping) — это технология, которая позволяет взаимодействовать с базой данных через объекты и классы в приложении, скрывая детали SQL-запросов.

В C# ORM, например Entity Framework, работает так:

  • Каждая таблица базы данных отображается на класс (модель данных).
  • Столбцы таблицы — на свойства класса.
  • ORM автоматически генерирует SQL-запросы для операций CRUD (создание, чтение, обновление, удаление) на основе изменений в объектах.

Управление моделями данных происходит через контекст данных (например, DbContext), который отслеживает состояние объектов:

  • Добавленные объекты помечаются как новые записи для вставки.
  • Изменённые — для обновления.
  • Удалённые — для удаления.

Пример:

public class Product
{
    public int Id { get; set; }
    public string Name { get; set; }
    public decimal Price { get; set; }
}

using(var context = new AppDbContext())
{
    var product = new Product { Name = "Book", Price = 9.99m };
    context.Products.Add(product); // Добавляем новую модель
    context.SaveChanges(); // Сохраняем изменения в БД
}

Таким образом, ORM упрощает работу с базой, позволяя работать с объектами, а не с сырыми SQL-запросами.