На клиенте обнаружено потенциально опасное значение Request.Form - ASP.NET MVC
Я получаю эту ошибку в моем приложении ASP.NET MVC, где я беру HTML-ввод из WYSIWYG, поэтому я не хочу проверять содержимое.
Я попытался найти решение, которое нашел здесь, но, похоже, в моем приложении MVC нет никакой разницы. Я также попытался сделать это в web.config, но опять же - не радость.
Это ошибка в ASP.NET MVC или что-то?
6 ответов
В MVC вы бы использовали атрибут ValidateInput (false).
Затем вам нужно очистить входные данные, например, с помощью чего-то подобного (встроенного в ASP.NET 4.5+; используйте пакет NuGet для более ранних версий).
В MVC 3 и более поздних версиях вы также можете использовать [AllowHtml]
приписывать. Этот атрибут позволяет вам быть более детальным, пропуская проверку только для одного свойства в вашей модели.
http://blogs.msdn.com/b/marcinon/archive/2010/11/09/mvc3-granular-request-validation-update.aspx
Просто поместите этот атрибут: [ValidateInput(false)] в метод действия на контроллере, который обрабатывает публикацию формы.
Использование <httpRuntime requestValidationMode="2.0" />
в веб-конфигурации
Нашел ответ здесь:
Может ли параметр ValidateRequest страницы быть переопределен?
В вашем методе действия контроллера (тот, который приносит это) добавьте [ValidateInput(false)]
пример
[HttpPost]
[ValidateInput(false)]
public ActionResult Insert(FormCollection formCollection, Models.Page page)
{
//your code
return View();
}