En mi aplicación angular, llamo a la API pasando un objeto. Solo tengo un evento de clic de botón. La lógica empresarial contiene varias operaciones de bases de datos con este simple clic.

En el lado del servidor, tengo que decidir insertar, actualizar o eliminar registros del marco de la entidad.

Mi pregunta es por conveniencia, ¿puedo mezclar diferentes tipos en un solo método?

Ejemplo de código:

[HttpPatch]
[HttpPost]
[HttpDelete]
public ActionResult InsertOrUpdateOrDeleteByCondition([Required][FromBody]MyDto body)
{
    if(body.value == "condition1")
    {
       dbContext.MyEntity.Add(body);
    }
    else if(body.value == "condition2")
    {
       dbContext.MyEntity.Update(body);
    }
    else if(body.value == "condition3")
    {
        // delete first
        // then insert new value
    }
    else
    {
       dbContext.MyEntity.Remove(body);
    }
    dbContext.SaveChanges();
    return Json("Good job");
}

Establecí un punto de interrupción en la línea SaveChanges(). Llegó allí, sin embargo, encontré que la mesa no ha cambiado.

0
Hello 25 oct. 2019 a las 01:26

1 respuesta

La mejor respuesta

Puede combinar else if está usando lógica booleana como && || ! incluso si son de diferentes tipos

0
tommmm 24 oct. 2019 a las 22:32