public async Task<IActionResult> CrudUpdateAsync([FromBody] CRUDModel<MyModel> value, string action)
{
try
{
await Task.CompletedTask;
switch (value.Action)
{
case "insert":
if (ModelState.IsValid)
{
int id = Records.Count + 1;
value.Value.Id = id;
Records.Add(value.Value);
}
break;
case "update":
if (ModelState.IsValid)
{
var ru = Records.FirstOrDefault(x => x.Id == value.Value.Id);
if (ru != null) ru.Description = value.Value.Description;
}
break;
case "remove":
var rd = Records.FirstOrDefault(x => x.Id == int.Parse(value.Key.ToString()));
Records.Remove(rd); //by using key property we have processed
return Json(value); the delete action
}
return Json(value.Value);
}
catch (Exception ex)
{
return NotFound(ex.Message);
}
}
|