危险的查询字符串,但它没有改变

本文关键字:改变 查询 字符串 危险 | 更新日期: 2023-09-27 18:08:26

遇到一个对某些代码进行简单更改的问题-错误声明查询字符串可能是危险的。查询字符串保持不变,我所改变的只是查询字符串调用

的模式背后的代码。

更改前代码(works):

protected void Page_Load(object sender, EventArgs e)
    {
        Check();
        if (!Page.IsPostBack)
        {
            //Bunch of methods
        }
        Set();
    }

after (not working):

 protected void Page_Load(object sender, EventArgs e)
    {
        Check();
        if (!Page.IsPostBack)
        {
            if (UserInfo.Promotion != string.Empty && Request.QueryString["modal"].ToString() == "changeplan")
            {
                SetPageContentWithPromotion();
            }
            else
            {
                //Bunch of method
            }
        }
        Set();
    }
}
private void SetPageContentWithPromotion()
    {
        //bunch of logic to set up page
    }

我设置了断点,它们甚至没有被击中。页面只显示一个错误,并且永远不会触及模态背后的代码。我被难住了

危险的查询字符串,但它没有改变

将这一行添加到您的网页中。如果没有配置:

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

然后在特定的aspx页面上设置这个属性在你的页面标签中,如下所示:

<%@ Page ValidateRequest="false"