Crear Razor Helpers en ASP.NET MVC

Siguiendo lo visto en el post inicial sobre reutilización en nuestras vistas ASP.NET MVC y en el de Html Helpers en esta entrada veremos los Razor Helpers, la alternativa que nos permite realizarlo directamente desde nuestra vistas.

Lo primero que vamos a ver es la sintaxis del mismo. Al ser código Razor, el mismo deberá estar ubicado en una vista. La declaración es muy similar a una función, salvo que inicia con la palabra clave @helper, seguida del nombre del mismo y los parámetros que recibe. A la vez que su ámbito se define con corchetes. Luego el contenido es como si estuviéramos escribiendo una vista en Razor de forma normal.

Siguiendo con el ejemplo del post anterior vamos a ver cómo quedaría el helper en cuestión para renderizar una lista de elementos HTML con esta alternativa:

RazorHelpers - HelperEnVista
Sintaxis de un Helper Razor

Como se puede apreciar, es muy sencilla la escritura del mismo. Y el uso también lo es, veámoslo en la siguiente imagen:

Leer más »

Helpers en ASP.NET MVC, reutilizando código en nuestras vistas

Como generalmente suele suceder cuando estamos desarrollando nuestra aplicación, un objetivo primordial es la reutilización de la mayor cantidad posible de código, logrando de esta forma que nuestras aplicaciones queden ordenadas, prolijas y mucho más mantenibles. Además de simplificar el trabajo que realizamos al momento de escribir nuestro código.

Cuando hablamos de vistas, hay distintas alternativas que tenemos disponibles, entre ellas los helpers. Un helper es una herramienta de extensión de ASP.NET MVC que nos permite crear código HTML de forma personalizada y parametrizada. Sus principales objetivos son:

  • Reutilizar comportamientos comunes que se repiten a lo largo de las vistas.
  • Facilitar la escritura de nuestras vistas, permitiendo que determinadas porciones de código queden definidas en un solo lugar.

Si bien son similares los puntos planteados anteriormente, con el primero hacemos incapié en cuestiones donde hay una mayor cantidad de lógica asociada a variantes de visualización. Con el segundo, a aquellos aspectos donde siempre escribimos el mismo HTML pero con pequeñas variantes.

Ahora bien, cómo hacemos nuestros helpers? Aquí tenemos dos alternativas disponibles, complementarias entre si:

  • Html Helpers
  • Razor Helpers

Veamos una descripción mínima, luego haremos un post detallado para cada una.

Leer más »