Cada vez que un usuario publica algo que contiene <
o está >
en una página de mi aplicación web, recibo esta excepción.
No quiero entrar en la discusión sobre la inteligencia de lanzar una excepción o bloquear una aplicación web completa porque alguien ingresó un carácter en un cuadro de texto, pero estoy buscando una forma elegante de manejar esto.
Atrapando la excepción y mostrando
Se ha producido un error, regrese y vuelva a escribir todo el formulario nuevamente, pero esta vez no use <
No me parece lo suficientemente profesional.
Deshabilitar la validación posterior ( validateRequest="false"
) definitivamente evitará este error, pero dejará la página vulnerable a una serie de ataques.
Idealmente: cuando se produce una devolución que contiene caracteres restringidos en HTML, ese valor publicado en la colección de formularios se codificará automáticamente en HTML. Entonces la .Text
propiedad de mi cuadro de texto serásomething & lt; html & gt;
¿Hay alguna manera de hacer esto desde un controlador?