/
d3h5
/
Unistream.TestTask
Обзор
Документация
Войти
/
d3h5
/
Unistream.TestTask
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
Unistream.TestTask.DataAccessImpl/DataContexts/Configurations/TransactionEntityTypeConfiguration.cs
75 строк
2 KB
WORKSTATION-H\mrthe
Правки, отладка
03 июн 2025, 17:24
03 июн 2025, 17:24
012cad7
Код
Авторство
О чём код?
using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Metadata.Builders; using Unistream.TestTask.DataAccessInterfaces.DataContexts.Entities; namespace Unistream.TestTask.DataAccessImpl.DataContexts.Configurations; public sealed class TransactionEntityTypeConfiguration : IEntityTypeConfiguration<TransactionEntity> { public void Configure(EntityTypeBuilder<TransactionEntity> builder) { _ = builder.ToTable("transactions", ApplicationDbContext.DefaultSchema); _ = builder.Property(x => x.Id) .HasColumnName("id"); _ = builder.HasIndex(x => x.Id) .IsUnique(); _ = builder.Property(x => x.ClientId) .IsRequired() .HasColumnName("client_id"); _ = builder.Property(x => x.ParentTransactionId) .HasColumnName("parent_transaction_id"); _ = builder.Property(x => x.DateTime) .HasConversion( v => v, v => DateTime.SpecifyKind(v, DateTimeKind.Unspecified)) .IsRequired() .HasColumnName("datetime"); _ = builder.HasIndex(x => new { x.ClientId, x.DateTime }) .IsDescending(false, true); _ = builder.Property(x => x.Operation) .IsRequired() .HasColumnName("operation"); _ = builder.Property(x => x.InsertDateTime) .HasConversion( v => v, v => DateTime.SpecifyKind(v, DateTimeKind.Unspecified)) .IsRequired() .HasColumnName("insert_datetime"); _ = builder.Property(x => x.Amount) .IsRequired() .HasColumnName("amount") .HasPrecision(18, 2); _ = builder.Property(x => x.BalanceBefore) .HasColumnName("balance_before") .HasPrecision(18, 2); _ = builder.Property(x => x.BalanceAfter) .HasColumnName("balance_after") .HasPrecision(18, 2); _ = builder.Property(x => x.Status) .IsRequired() .HasColumnName("status"); _ = builder.HasIndex(x => x.Status); _ = builder.Property(x => x.Nonce) .IsRequired() .HasColumnName("nonce") .ValueGeneratedOnAdd(); _ = builder.HasKey(x => x.Nonce); } }