控制级别ValidateRequestMode无效

Evi*_*eer 1 .net c# asp.net webforms request-validation

我正在使用ASP.NET WebForms(.NET 4.5),并具有“内容块”控件,该控件可在许多页面上重复使用。我尝试将控件甚至单个元素的ValidateRequestMode设置为“ Disabled”,但来自web.config的请求验证仍可防止输入不安全。

有办法解决还是我做错了什么?

例:

Jas*_*kin 6

经过一番尝试和错误之后,我刚刚用下面的代码为一个网站解决了同样的问题-当涉及到WebForms时,Microsoft有关新的“请求验证”过程的文档似乎是错误的。

像这样在web.config中定位.NET 4.5:

<httpRuntime targetFramework="4.5" requestValidationMode="4.5" />
Run Code Online (Sandbox Code Playgroud)

然后添加ValidateRequestMode="Disabled"到输入控件本身,即:

<asp:textbox id="myControl" runat="server" ValidateRequestMode="Disabled"/>
Run Code Online (Sandbox Code Playgroud)

如果您直接访问POST数据(而不是通过myControl.Text访问),则此时还需要绕过验证:

Request.Unvalidated.Form("myControl");
Run Code Online (Sandbox Code Playgroud)