Tengo un formulario en el que uso ckeditor. Este formulario funcionó bien en Asp.Net 2.0 y 3.5, pero ahora no funciona en Asp.Net 4+. Tengo la directiva ValidateRequest = "false". ¿Alguna sugerencia?
asp.net
asp.net-4.0
validate-request
HasanG
fuente
fuente
Respuestas:
Solución encontrada en la página de error. Solo necesitaba agregar requestValidationMode = "2.0"
Información de MSDN: Propiedad HttpRuntimeSection.RequestValidationMode
fuente
Hay una manera de volver la validación a 2.0 para una página. Simplemente agregue el siguiente código a su web.config:
fuente
Sé que esto es una vieja pregunta, pero si se encuentra con este problema en MVC 3 a continuación, se puede decorar su
ActionMethod
con[ValidateInput(false)]
y simplemente apagar la validación de solicitudes para una solaActionMethod
, que es práctico. Y no necesita realizar ningún cambio en elweb.config
archivo, por lo que aún puede usar la validación de solicitud de .NET 4 en cualquier otro lugar.p.ej
fuente
Esto funciona sin cambiar el modo de validación.
Tienes que usar un
System.Web.Helpers.Validation.Unvalidated
ayudante deSystem.Web.WebPages.dll
. Va a devolver unUnvalidatedRequestValues
objeto que permite acceder al formulario y a QueryString sin validación.Por ejemplo,
Funciona para mí para MVC3 y .NET 4.
fuente
Tenga en cuenta que otro enfoque es mantenerse con el comportamiento de validación 4.0, pero definir su propia clase que se deriva
RequestValidator
y establece:(donde
YourNamespace.YourValidator
está bien, deberías poder adivinar ...)De esta manera, mantiene las ventajas del comportamiento 4.0s (específicamente, que la validación ocurre antes en el procesamiento), al tiempo que permite las solicitudes que debe dejar pasar.
fuente