// PUT: /ExerciseItemUserScores(5) /// <summary> /// Support for updating Knowledge items /// </summary> public async Task <IActionResult> Put([FromODataUri] int key, [FromBody] ExerciseItemUserScore update) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (key != update.ID) { return(BadRequest()); } var coll = await _context.ExerciseItemUserScores .SingleOrDefaultAsync(x => x.ID == key); if (coll == null) { return(NotFound()); } coll.UpdateData(update); try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { throw; } return(Updated(update)); }
public async Task <IActionResult> Post([FromBody] ExerciseItemUserScore score) { if (!ModelState.IsValid) { foreach (var value in ModelState.Values) { foreach (var err in value.Errors) { System.Diagnostics.Debug.WriteLine(err.Exception?.Message); } } return(BadRequest()); } if (score.TakenDate == null) { score.TakenDate = DateTime.Now; } var scorecnt = (from dbscore in this._context.ExerciseItemUserScores where dbscore.User == score.User && dbscore.RefID == score.RefID && dbscore.TakenDate.Value.Date == score.TakenDate.Value.Date select dbscore).Count(); if (scorecnt > 0) { return(BadRequest("Same record exists")); } _context.ExerciseItemUserScores.Add(score); await _context.SaveChangesAsync(); return(Created(score)); }
public void TestCase_ExerciseItemUserScore_UpdateData() { var score = new ExerciseItemUserScore(); score.ID = 1; score.RefID = 2; score.Score = 100; score.User = "******"; Assert.Throws <InvalidOperationException>(() => score.UpdateData(null)); var score2 = new ExerciseItemUserScore(); score2.UpdateData(score); Assert.Equal(score2.Score, score.Score); }