public void SpentTimeValueObject_DontCreateWrongAmount(int[] data) { for (int i = 0; i < data.Length; i++) { Action act = () => SpentTime.FromInt(data[i]); act.Should().Throw <ArgumentException>(); } }
public void SpentTimeValueObject_CreatingFromInt(int[] data) { for (int i = 0; i < data.Length; i++) { var spentTime = SpentTime.FromInt(data[i]); spentTime.Amount.Should().Be(data[i]); } }
/// <summary>Создание новой карточки учета времени</summary> /// <param name="request">Запрос на создание карточки</param> /// <returns>Новая карточка учета времени</returns> public static SheetAggregate CreateFromRequest(SheetCreateRequest request) { return(new SheetAggregate() { Id = Guid.NewGuid(), Amount = SpentTime.FromInt(request.Amount), ContractId = request.ContractId, Date = request.Date, EmployeeId = request.EmployeeId, ServiceId = request.ServiceId, IsDeleted = false, }); }
public void Configure(EntityTypeBuilder <SheetAggregate> builder) { builder.ToTable("sheets"); builder.Property(x => x.Id) .ValueGeneratedNever() .HasColumnName("Id"); builder .HasOne(sheet => sheet.Invoice) .WithMany(invoice => invoice.Sheets) .HasForeignKey("InvoiceId"); builder .HasOne(sheet => sheet.Contract) .WithMany(contract => contract.Sheets) .HasForeignKey("ContractId"); builder .HasOne(sheet => sheet.Service) .WithMany(service => service.Sheets) .HasForeignKey("ServiceId"); builder .HasOne(sheet => sheet.Employee) .WithMany(employee => employee.Sheets) .HasForeignKey("EmployeeId"); //Value Objects var converter = new ValueConverter <SpentTime, int>( v => v.Amount, v => SpentTime.FromInt(v)); builder.Property(x => x.Amount) .HasConversion(converter); }