Me enfrenté al mismo problema, aunque agregué [System.Web.Mvc.AllowHtml]
a la propiedad en cuestión como se describe en algunas respuestas.
En mi caso, tengo una UnhandledExceptionFilter
clase que accede al objeto Solicitud antes de que tenga lugar la validación MVC (y, por lo tanto, AllowHtml no tiene efecto) y este acceso aumenta a [HttpRequestValidationException] A potentially dangerous Request.Form value was detected from the client
.
Esto significa que el acceso a ciertas propiedades de un objeto Solicitud activa implícitamente la validación (en mi caso, es la Params
propiedad).
Se documenta una solución para evitar la validación en MSDN
Para deshabilitar la validación de solicitud para un campo específico en una solicitud (por ejemplo, para un elemento de entrada o valor de cadena de consulta), llame al método Request.Unvalidated cuando obtenga el elemento, como se muestra en el siguiente ejemplo
Por lo tanto, si tiene un código como este
var lParams = aRequestContext.HttpContext.Request.Params;
if (lParams.Count > 0)
{
...
cámbielo a
var lUnvalidatedRequest = aRequestContext.HttpContext.Request.Unvalidated;
var lForm = lUnvalidatedRequest.Form;
if (lForm.Count > 0)
{
...
o simplemente use la Form
propiedad que no parece activar la validación
var lForm = aRequestContext.HttpContext.Request.Form;
if (lForm.Count > 0)
{
...