validaterequest - validate request c#
validateRequest="false" está actuando raro (3)
ValidationRequest = "false" solo se aplicó a los archivos .aspx en versiones anteriores del marco.
En ASP.NET 4 está habilitado para todas las solicitudes antes de la fase BeginRequest de cualquier solicitud HTTP. Por lo tanto, la validación de solicitud se aplica a las solicitudes de todos los recursos de ASP.NET, como las llamadas al servicio web y los manejadores HTTP personalizados.
Para eludir este nuevo mecanismo uno debe crear su propio RequestValidator y cambiar el web.config para usar este validador personalizado.
http://msdn.microsoft.com/en-us/library/system.web.util.requestvalidator.aspx
(ASP.NET 4.0 C #)
Tengo mi <httpRuntime requestValidationMode="2.0" />
en el webconfig. Y tengo mi validateRequest="false"
en los directorios de página.
En una página, envío algunos datos (html) de un ckeditor (textarea) a una base de datos. Funciona bien. En otra página llené el ckeditor con datos de una base de datos, luego lo actualicé (lo devolví) y obtuve el famoso "Se detectó un valor Request.Form potencialmente peligroso del cliente".
Me hace muy confundido La única diferencia es que en la segunda página los datos se insertan dinámicamente en el área de texto, donde en la primera página el área de texto está vacío en la carga de la página. ¿Me estoy perdiendo de algo? Estoy bastante seguro de que la codificación / decodificación no significa nada, ya que el framework lo detiene antes de que yo pueda comenzar a jugar con él en el back-end.
De acuerdo, no he encontrado una respuesta a por qué se comporta de esta manera. Pero encontré una forma muy fácil y rápida de hacerlo (+ nuevos beneficios).
Hay un tipo que hizo un control .net ckeditor
http://cksource.com/forums/viewtopic.php?f=11&t=15882
Ahí tienes. Funciona de maravilla. Sin errores de validación, nunca más.
Intente configurar ValidateRequest en falso en la directiva de la página? Una mejor opción podría ser utilizar la Biblioteca de scripts de Microsoft Anti-Cross Site:
http://msdn.microsoft.com/en-us/library/aa973813.aspx
Una pregunta similar fue respondida aquí:
Cuál es la diferencia entre requestValidationMode 2.0 y 4.0
También es posible que ASP.NET 4.0 no esté instalado o que el grupo de aplicaciones no esté configurado para ejecutarse en 4.0.