private async Task <DataBaseObjectProduct> SaveObjectProduct( DataBaseObjectProduct obj ) { DataBaseObjectProduct result = null; using (var source = CreateDbContext()) { if (obj.Id > 0) { result = await source.Product .FirstAsync(x => x.Id == obj.Id) .CoreBaseExtTaskWithCurrentCulture(false); var loader = new DataBaseLoaderProduct(result); loader.LoadDataFrom(obj); } else { var entity = DataEntityObjectProduct.Create(obj); var entry = source.Product.Add(entity); result = entry.Entity; } await source.SaveChangesAsync().CoreBaseExtTaskWithCurrentCulture(false); } return(result); }
private ModProductBaseJobItemGetOutput CreateItem(DataEntityObjectProduct entity) { var result = new ModProductBaseJobItemGetOutput { ObjectProduct = entity.CreateObjectProduct(), ObjectProductCategory = entity.ObjectProductCategory.CreateObjectProductCategory() }; if (entity.ObjectsProductProductFeature.Any()) { result.ObjectsProductProductFeature = entity.ObjectsProductProductFeature.Select( x => x.CreateObjectProductProductFeature() ).ToArray(); } return(result); }