gpt4 book ai didi

asp.net-mvc - 为什么 ValidateInput(False) 不起作用?

转载 作者:行者123 更新时间:2023-12-01 20:03:48 25 4
gpt4 key购买 nike

我正在将使用 webforms 创建的应用程序转换为使用 vb.net 的 asp.net mvc 框架。我的其中一个观点有问题。当我提交表单时,出现蓝屏死机,提示“从客户端检测到潜在危险的 Request.Form 值”。我使用tinymce 作为我的RTE。我已经设置了 View 本身

ValidateRequest="false"

我知道,从我到目前为止所读到的内容来看,MVC 并不尊重它。所以我也把它放在 Controller Action 上。我尝试过不同的设置:

<ValidateInput(False), AcceptVerbs(HttpVerbs.Post)> _

...还有...

<AcceptVerbs(HttpVerbs.Post), ValidateInput(False)> _

...还有这样的...

<ValidateInput(False)> _
<AcceptVerbs(HttpVerbs.Post)> _

只是想看看它是否有所不同,但我仍然遇到蓝屏死机。我只想为此 View 以及我的帖子所属的 Controller 中的特定操作设置它。我错过了什么吗?

最佳答案

使用 asp.net 4,您还需要在 web.config 中配置验证模式。

将以下内容设置为 <system.web> 的子项元素:

<system.Web>
...
<httpRuntime requestValidationMode="2.0"/>

Asp.Net 4 将 requestValidationMode 设置为 4.0默认情况下,它告诉系统在 HTTP 请求的 BeginRequest 阶段之前执行请求验证。验证将在系统到达操作属性之前进行,告诉它不要验证请求,从而使该属性变得无用。设置 requestValidationMode="2.0"将恢复为 asp.net 2.0 请求验证行为,允许 ValidateInput属性按预期工作。

关于asp.net-mvc - 为什么 ValidateInput(False) 不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/807662/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com