No tienes acceso a esta clase

¬°Contin√ļa aprendiendo! √önete y comienza a potenciar tu carrera

Eliminando datos con Entity framework

24/25
Recursos

Aportes 4

Preguntas 3

Ordenar por:

¬ŅQuieres ver m√°s aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

Esta es otra alternativa de validación; de esta forma no es necesario englobar todo el proceso dentro de un if. Esto hace que sea un poco más legible el código.

app.MapDelete("/api/task/{id}", async ([FromServices] TasksDBContext dbContext, [FromRoute] Guid id) => {
    var task = dbContext.Tasks.Find(id);

    if(task == null)
        return Results.NotFound("Task not found.");
        
    dbContext.Remove<efFundamentals.Models.Task>(task);
    await dbContext.SaveChangesAsync();

    return Results.Ok("Removed!");
});

Pueden agregar peque√Īos comentarios de confirmaci√≥n como los siguientes as√≠ queda mas bonito:

return Results.Ok($"Se actualizo la tarea de nombre: {tareaActual.Titulo}");
//----------------------------------------------------
return Results.Ok($"Tarea con titulo: {tareaActualDelete.Titulo}, se elimino exitosamente");

Eliminando datos con Entity framework


app.MapDelete("/api/tareas/{id}", async ([FromServices] HomeworkContext dbContext, [FromRoute] Guid id) =>
{
	var tarea = await dbContext.homeworks.FindAsync(id);
	if (tarea == null)
	{
		return Results.NotFound();
	}
	dbContext.homeworks.Remove(tarea);
	await dbContext.SaveChangesAsync();
	return Results.Ok(tarea);
});

Este código es parte de una aplicación de servidor web que utiliza el framework ASP.NET Core. En este caso, se define una ruta de borrado para una tarea específica en un API RESTful.

  • La ruta de borrado se define mediante el m√©todo MapDelete y se accede a trav√©s del endpoint /api/tareas/{id}, donde {id} es una variable que se reemplaza con el identificador √ļnico de la tarea a borrar.
  • El par√°metro [FromServices] HomeworkContext dbContext indica que se est√° inyectando una instancia del contexto de base de datos en la funci√≥n an√≥nima. Esto se logra mediante el contenedor de dependencias de ASP.NET Core.
  • El par√°metro [FromRoute] Guid id indica que se est√° obteniendo el identificador de la tarea a borrar de la ruta de la solicitud.
  • Dentro de la funci√≥n an√≥nima, se usa await dbContext.homeworks.FindAsync(id) para buscar la tarea a borrar en la base de datos. Si la tarea no se encuentra, se devuelve un resultado Results.NotFound(). De lo contrario, se elimina la tarea llamando al m√©todo dbContext.homeworks.Remove(tarea). Finalmente, se guardan los cambios en la base de datos llamando a await dbContext.SaveChangesAsync() y se devuelve un resultado Results.Ok(tarea) que contiene la tarea borrada.

Esta es mi forma de actualizar las CATEGOR√ćAS.

<//Para ACTUALIZAR CATEGORIAS datos de una Base de Datos.
app.MapPut("/api/categorias/{id}", async ([FromServices] TareasContext dbContext, [FromBody] Categoria categoria, [FromRoute] Guid id) =>
{
    //El método FIND, busca por la que esté marcada como KEY en el modelo.
    var categoriaActual = dbContext.Categorias.Find(id);

    if (categoriaActual != null)
    {
        //categoriaActual.CategoriaId = categoria.CategoriaId;
        categoriaActual.Nombre = categoria.Nombre;
        categoriaActual.Peso = categoria.Peso;
        categoriaActual.Descripcion = categoria.Descripcion;
        await dbContext.SaveChangesAsync();
        return Results.Ok("Se realiz√≥ la ACTUALIZACI√ďN de la CATEGOR√ćA de manera correcta");

    }
    return Results.NotFound();
});>