/
romanryazh
/
ProductionManagement
Обзор
Документация
Войти
/
romanryazh
/
ProductionManagement
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
develop
ProductionManagement.Infrastructure/AppDbContext.cs
43 строки
2 KB
Roman Ryazh
Реализация первой задачи. Добавлены сущности ProductType и EquipmentType, CRUD операции для них, реализованы необходимые для работы сервисы и компоненты конвейера.
10 авг 2025, 18:27
10 авг 2025, 18:27
a847bf0
Код
Авторство
О чём код?
using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.Configuration; using ProductionManagement.Domain.Entities; using ProductionManagement.Infrastructure.Configurations; namespace ProductionManagement.Infrastructure; /// <summary> /// Контекст базы данных приложения. /// Предоставляет доступ к сущностям и настраивает их конфигурацию. /// </summary> /// <param name="options">Параметры конфигурации контекста базы данных</param> public class AppDbContext(DbContextOptions<AppDbContext> options) : DbContext(options) { /// <summary> /// Набор данных для работы с типами продуктов /// </summary> public DbSet<ProductType> ProductTypes => Set<ProductType>(); /// <summary> /// Набор данных для работы с типами оборудования /// </summary> public DbSet<EquipmentType> EquipmentTypes => Set<EquipmentType>(); protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { // if (!optionsBuilder.IsConfigured) // optionsBuilder.UseNpgsql("Host=localhost;Port=5432;Database=pmdb;Username=postgres;Password=postgres"); } /// <summary> /// Настраивает модель данных приложения /// </summary> /// <remarks> /// Применяет все конфигурации сущностей, определённые в отдельных классах конфигурации /// </remarks> /// <param name="modelBuilder">Сборщик модели данных</param> protected override void OnModelCreating(ModelBuilder modelBuilder) { modelBuilder.ApplyConfiguration(new ProductTypeConfiguration()); modelBuilder.ApplyConfiguration(new EquipmentTypeConfiguration()); } }