Dominando el Arte de los Controladores en ASP.NET Core: Creando la Lógica de Negocio en tus Aplicaciones Web

Dominando el Arte de los Controladores en ASP.NET Core

Los controladores son el núcleo de la lógica de negocio en las aplicaciones web ASP.NET Core. Actúan como intermediarios entre las solicitudes HTTP entrantes y el resto de la aplicación, coordinando el flujo de datos, procesamiento y respuestas. En este tutorial, te sumergirás en el fascinante mundo de los controladores en ASP.NET Core, aprenderás cómo crearlos, configurarlos y aprovechar al máximo su potencial para construir aplicaciones web robustas y eficientes.

1. Creación de un Controlador:

Comenzaremos por crear un controlador básico para gestionar las solicitudes entrantes:

// Controladores/EjemploController.cs
using Microsoft.AspNetCore.Mvc;

public class EjemploController : Controller
{
    public IActionResult Index()
    {
        return Content("¡Hola desde el controlador!");
    }
}

En este ejemplo, hemos creado un controlador llamado “EjemploController” que hereda de la clase base “Controller”. Contiene una acción llamada “Index” que simplemente devuelve un mensaje de texto.

2. Configuración de Rutas de Acceso:

Ahora, vamos a configurar las rutas de acceso para que nuestras acciones de controlador sean accesibles desde el navegador:

using Proyecto.Datos;
using Microsoft.EntityFrameworkCore;

var builder = WebApplication.CreateBuilder(args);

// Add services to the container.
builder.Services.AddControllersWithViews();

var app = builder.Build();

// Configure the HTTP request pipeline.
if (!app.Environment.IsDevelopment())
{
    app.UseExceptionHandler("/Home/Error");
}
app.UseStaticFiles();

app.UseRouting();

app.MapControllerRoute(
    name: "default",
    pattern: "{controller=Ejemplo}/{action=Index}/{id?}");

app.Run();

Aquí estamos configurando las rutas de acceso para que ASP.NET Core pueda enrutar las solicitudes HTTP a los controladores y acciones correspondientes.

3. Consumiendo Datos en un Controlador:

Vamos a agregar una acción de controlador que consume datos de un repositorio y los pasa a una vista para su visualización:

// Controladores/ProductoController.cs
using Microsoft.AspNetCore.Mvc;
using MiAplicacion.Models;

public class ProductoController : Controller
{
    private readonly IProductoRepository _productoRepository;

    public ProductoController(IProductoRepository productoRepository)
    {
        _productoRepository = productoRepository;
    }

    public IActionResult Lista()
    {
        var productos = _productoRepository.ObtenerTodos();
        return View(productos);
    }
}

En este ejemplo, estamos inyectando una interfaz de repositorio de productos en el constructor del controlador y luego utilizando este repositorio para obtener una lista de productos y pasarla a una vista.

4. Creación de Vistas:

Finalmente, crearemos una vista para mostrar la lista de productos:

<!-- Vistas/Producto/Lista.cshtml -->
@model IEnumerable<Producto>

<h1>Lista de Productos</h1>

<ul>
    @foreach (var producto in Model)
    {
        <li>@producto.Nombre - @producto.Precio</li>
    }
</ul>

Aquí hemos creado una vista que recibe una lista de productos y la muestra en una lista desordenada.

Conclusiones:

Los controladores son elementos fundamentales en el desarrollo de aplicaciones web ASP.NET Core, proporcionando la lógica de negocio y coordinando las interacciones entre el cliente y el servidor. En este tutorial, has aprendido cómo crear controladores, configurar rutas de acceso, consumir datos y trabajar con vistas. Con este conocimiento, estarás bien equipado para construir aplicaciones web poderosas y escalables utilizando ASP.NET Core. ¡Adelante, y que comience la aventura en el mundo de los controladores en ASP.NET Core!

Te puede interesar...

Deja un comentario