ASP.NET MVC 5 – Attribute routing II

En el post anterior prometí ampliar un poco más el tema del routing por atributos. En este caso vamos a hablar de parámetros opcionales, valores por default, prefijos y rutas por default.

Parámetros opcionales y Valores por default

Definir que un parámetro es opcional es tan simple como poner el signo de interrogación “?” al final del nombre del mismo. En el siguiente ejemplo estamos diciendo que el parámetro value es opcional:

Parámetro Opcional

Parámetro Opcional

Para definir el valor por default de un parámetro simplemente agregamos al final del nombre el signo “=” y a continuación el valor. En el siguiente ejemplo el parámetro value tiene como valor por defecto el texto “Valor por default”:

Valor por default

Valor por default

Podemos probar lo anterior utilizando las siguientes URIs:

Prefijos

Algo que podemos definir para un conjunto de rutas es un prefijo. Por ejemplo, si todas las rutas del controlador ProductsController van a comenzar con el prefijo “productos”, podemos especificar – a nivel controlador – el mismo valor utilizando el atributo [RoutePrefix] :

Prefijos

Prefijos

Con esto evitamos tener que agregar el prefijo “producto” en cada atributo de acción. En caso de que queramos omitir el prefijo en algún método de acción, simplemente debemos agregar el tilde “~” en la definición de la ruta, un ejemplo seria el siguiente: “~/principal”.

Rutas por default

Otra cosa que podemos hacer es definir una ruta por default. Para esto debemos aplicar el atributo [Route] en el controlador y especificarle la acción que deseamos por default utilizando para ello el parámetro action. En el ejemplo estamos diciendo que la ruta por default es la acción Default – chan! -:

Default Route

Default Route

Importante! La acción que definamos por default no debe tener el atributo [Route] (caso contrario este atributo sobre-escribe el del controlador pisando esta regla).

Espero que les sea de utilidad!

En el próximo post vamos a ver algunas características por demás interesantes como restricciones y áreas.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s