public async Task <ActionResult> CreatePeriodicElement([FromBody] PeriodicElement element) { if (!ModelState.IsValid) { return(BadRequest(new ApiResponse { Status = false, ModelState = ModelState })); } try { // element.id must be 0 to insert var elem = await _PeriodicElementsRepository.InsertPeriodicElementAsync(element); if (elem == null) { return(BadRequest(new ApiResponse { Status = false })); } return(Ok(elem)); // useless //return CreatedAtRoute("GetPeriodicElementRoute", new { id = elem.position }, // new ApiResponse { Status = true }); } catch (Exception exp) { _Logger.LogError(exp.Message); return(BadRequest(new ApiResponse { Status = false })); } }
////[ProducesResponseType(typeof(ApiResponse), 200)] ////[ProducesResponseType(typeof(ApiResponse), 400)] public async Task <ActionResult> UpdatePeriodicElement(int id, [FromBody] PeriodicElement element) { if (!ModelState.IsValid) { return(BadRequest(new ApiResponse { Status = false, ModelState = ModelState })); } try { var status = await _PeriodicElementsRepository.UpdatePeriodicElementAsync(element); if (!status) { return(BadRequest(new ApiResponse { Status = false })); } return(Ok(new ApiResponse { Status = true })); } catch (Exception exp) { _Logger.LogError(exp.Message); return(BadRequest(new ApiResponse { Status = false })); } }
public async Task <bool> UpdatePeriodicElementAsync(PeriodicElement element) { try { var periodicElement = _context.PeriodicElements.FirstOrDefault(p => p.Id == element.Id); _context.Entry(periodicElement).CurrentValues.SetValues(element); return(await _context.SaveChangesAsync() > 0 ? true : false); } catch (Exception exp) { _Logger.LogError($"Error in {nameof(UpdatePeriodicElementAsync)}: " + exp.Message); } return(false); }
//public async Task<PagingResult<Customer>> GetCustomersPageAsync(int skip, int take) //{ // var totalRecords = await _Context.Customers.CountAsync(); // var customers = await _Context.Customers // .OrderBy(c => c.LastName) // .Include(c => c.State) // .Include(c => c.Orders) // .Skip(skip) // .Take(take) // .ToListAsync(); // return new PagingResult<Customer>(customers, totalRecords); //} public async Task <PeriodicElement> InsertPeriodicElementAsync(PeriodicElement element) { _context.Add(element); try { await _context.SaveChangesAsync(); } catch (System.Exception exp) { _Logger.LogError($"Error in {nameof(InsertPeriodicElementAsync)}: " + exp.Message); } return(element); }
private async Task AddPeriodicElements() { var jsonText = File.ReadAllText("./Services/PeriodicElements.json"); var periodicElements = JsonConvert.DeserializeObject <List <PeriodicElementDto> >(jsonText); foreach (var item in periodicElements) { var u = new PeriodicElement { position = item.position, name = item.name, weight = item.weight, symbol = item.symbol, }; _context.PeriodicElements.Add(u); } _context.SaveChanges(); }