Пример #1
0
        public async Task HireAsync(Employee employee)
        {
            if (employee == null)
            {
                throw new ArgumentNullException(nameof(employee));
            }
            await dbContext.Employees.AddAsync(employee);

            dbContext.SaveChanges();
        }
 private void SeedMockDatabase(PertensaDbContext inMemoryDbContext)
 {
     inMemoryDbContext.Employees.AddRangeAsync(new Employee[]
     {
         new Employee()
         {
             FirstName = "First", MiddleName = "Middle", LastName = "Last"
         },
     });
     inMemoryDbContext.SaveChanges();
 }
 private void SeedMockDatabase(PertensaDbContext inMemoryDbContext)
 {
     inMemoryDbContext.Warehouse.AddRangeAsync(new Material[]
     {
         new Material(EElement.Ag, EForm.Bars, 100),
         new Material(EElement.Al, EForm.Slabs, 100)
     });
     inMemoryDbContext.Alloys.AddRangeAsync(new Alloy[]
     {
         new Alloy("Ag44.6Al55.4", 1234.56M)
     });
     inMemoryDbContext.SaveChanges();
 }
        public async Task <Alloy> CreateAlloyAsync(IEnumerable <KeyValuePair <string, double> > elements)
        {
            StringBuilder compositionInfo = new StringBuilder();

            foreach (var element in elements
                     .OrderByDescending(kvp => kvp.Value)
                     .ThenByDescending(kvp => kvp.Key))
            {
                compositionInfo.Append(element.Key);
                compositionInfo.Append($"{element.Value:F1}");
            }
            string composition = compositionInfo.ToString().Trim();

            if (dbContext.Alloys.Any(a => a.Composition == composition))
            {
                throw new DuplicateObjectException(typeof(Alloy), composition);
            }
            var alloy = new Alloy(composition);
            await dbContext.Alloys.AddAsync(alloy);

            dbContext.SaveChanges();
            return(alloy);
        }