public async Task CreateAsync(CreateAutopartDTO autopart, string userId, string imagePath) { var autopartEntity = new Autopart { Name = autopart.Name, Price = autopart.Price, Description = autopart.Description, CategoryId = autopart.CategoryId, ConditionId = autopart.ConditionId, OwnerId = userId, }; var carEntity = this.carRepository.All() .FirstOrDefault(x => x.ModelId == autopart.ModelId && x.CarTypeId == autopart.CarTypeId && x.MakeYear == autopart.MakeYear); if (carEntity == null) { carEntity = new Car { ModelId = autopart.ModelId, CarTypeId = autopart.CarTypeId, MakeYear = autopart.MakeYear, }; } autopartEntity.Car = carEntity; foreach (var image in autopart.Images) { var extension = this.imageService.GetExtension(image.FileName); var dbImage = new Image { OwnerId = userId, Extension = extension, }; autopartEntity.Images.Add(dbImage); await this.imageService.Save(image, imagePath, dbImage.Id); } await this.autopartRepository.AddAsync(autopartEntity); await this.autopartRepository.SaveChangesAsync(); }
public void Create(CreateAutopartDTO autopart) { if (autopart == null) { return; } var autopartEntity = new Autopart { Name = autopart.Name, CarModelId = autopart.ModelId, CategoryId = autopart.CategoryId, DateAdded = DateTime.UtcNow, ModifiedDate = DateTime.UtcNow, Price = autopart.Price }; autopartRepository.Add(autopartEntity); autopartRepository.SaveChanges(); }