Я зіткнувся з тим же питанням, хоча я додав [System.Web.Mvc.AllowHtml]відповідне майно, як описано в деяких відповідях.
У моєму випадку у мене є UnhandledExceptionFilterклас, який звертається до об'єкта Request до того, як відбудеться перевірка MVC (і тому AllowHtml не має ефекту), і цей доступ підвищує a [HttpRequestValidationException] A potentially dangerous Request.Form value was detected from the client.
Це означає, що доступ до певних властивостей об'єкта Request неявно запускає перевірку (у моєму випадку його Paramsвластивість).
Рішення для запобігання валідації задокументоване на MSDN
Щоб відключити перевірку запиту для певного поля в запиті (наприклад, для вхідного елемента або значення рядка запиту), зателефонуйте метод Request.Uvavalified, коли ви отримаєте елемент, як показано в наступному прикладі
Тому, якщо у вас є такий код
var lParams = aRequestContext.HttpContext.Request.Params;
if (lParams.Count > 0)
{
...
змінити його на
var lUnvalidatedRequest = aRequestContext.HttpContext.Request.Unvalidated;
var lForm = lUnvalidatedRequest.Form;
if (lForm.Count > 0)
{
...
або просто використовувати Formмайно, яке, здається, не спрацьовує
var lForm = aRequestContext.HttpContext.Request.Form;
if (lForm.Count > 0)
{
...