我想在ASP.NET MVC 2.0中的特定视图上禁用RequestValidation。所以我添加了一些必要的内容来查看Page指令部分,如下所示:
<%@ Page ValidateRequest="false" Language="C#" MasterPageFile="Path" Inherits="System.Web.Mvc.ViewPage<Path>" %>
但仍然没有。
甚至尝试在Web中添加它.Config:
<httpRuntime requestValidationMode="2.0" />
答案 0 :(得分:3)
您是否还在操作中添加了[ValidateInput(false)]
属性?
答案 1 :(得分:0)
我使用了这种方法,因为这是我发现它的唯一方法。
我用无效字符替换了无效字符。
前)strUrl = strUrl.Replace("&", "-")
答案 2 :(得分:0)
为什么不为您回发的对象创建一个viewmodel。 您可以使用正则表达式来预先传播非法字符,例如&lt;和&gt;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
namespace Web.Models.ViewModels
{
public class Account
{
public Guid Id { get; set; }
[Required(ErrorMessage = "You have to enter this")]
[StringLength(100, ErrorMessage = "Too much text")]
[RegularExpression(@"^([a-zA-Z0-9_\-\.\s]+)", ErrorMessage = "Not allowed")]
public string Firstname { get; set;
}
}