Por convención, los registrábamos en una clase llamada FilterConfig, habitualmente ubicada en la carpeta /App_Start del proyecto, y cuya pinta era más o menos la siguiente:
Este código era llamado durante la inicialización de la aplicación desde el evento
Application_Start()
del archivo Global.asax:Como sabemos, en MVC 6/ASP.NET 5 el Global.asax ha desaparecido para no volver, y, si profundizamos un poco, veremos que tampoco existe el tipo
GlobalFilterCollection
, ni la clase estática FilterConfig
que antes daban soporte a esta característica.¿Y a dónde ha ido a parar todo esto en el nuevo MVC 6? Pues, como era de esperar, al tratarse de algo que se realiza durante el arranque, su destino ha sido la clase Startup.
El método
ConfigureServices()
de esta clase es el punto desde el que se añaden los distintos servicios y componentes usados por la aplicación al sistema de resolución de dependencias de ASP.NET 5, pero, además, al tratarse de un punto muy inicial en la ejecución de la aplicación, lo usaremos también para establecer las configuraciones básicas de algunos componentes, como el framework MVC.La forma de hacerlo es muy sencilla. En la siguiente porción de código se muestra cómo se añaden los servicios de MVC, y cómo seguidamente añadimos a la colección de filtros globales un filtro
RequireHttps
para obligar a que el acceso a nuestros controladores se realice siempre sobre el protocolo seguro HTTPS:Ese método
ConfigureMvc()
que veis en el código anterior en recibe como parámetro una instancia de la clase MvcOptions
, en cuyo interior encontraremos propiedades en las que podemos configurar muchos aspectos de MVC, como los binders, motores de vistas, filtros, proveedores de metadatos, etc. Recordad que en versiones anteriores del framework estas configuraciones se realizaban a través de clases estáticas globales, por lo que ahora queda todo mucho más ordenado y accesible :)Publicado en Variable not found.
from Variable not found http://www.variablenotfound.com/2015/06/donde-se-anaden-los-filtros-globales-en.html
via IFTTT