1

HTML を受け入れる必要がある ASP.NET 4.5 RC WebForms アプリにテキスト ボックスがあります。

私はこれを調査し、これを可能にするために次のことを行いました: web.config で、requestValidationMode と validateRequest を適切に設定しました。

<httpRuntime requestValidationMode="2.0" enableVersionHeader="false"/> 
<pages enableEventValidation="false" validateRequest="false">

コントロール自体に属性 ValidateRequestMode="Disabled" を追加しました

<asp:TextBox ID="txtBio" runat="server" TextMode="MultiLine" Height="100" Width="300" ValidateRequestMode="Disabled" />

ただし、それでもエラーが発生します。

潜在的に危険な Request.Form 値がクライアントから検出されました

他に何を試すことができるかについて、他にアイデアはありますか?ASP.NET 4.5 RC Web スタックのバグだと思いますが、おそらく間違っています。私は文字通りアイデアが不足しているので、そのように感じます。私は今、すべてのスイッチをフリックしたようです。

さらに、この項目以外はすべて requestValidation をオンのままにしておくことをお勧めしますが、まったくオフにすることができれば、それは良いスタートです。

どうもありがとう

4

1 に答える 1

1

validateRequest="false"次のように、ページの上部にプロパティを追加してみてください。

%@ Page Language="C#" AutoEventWireup="true" CodeBehind="page.aspx.cs" validateRequest="false" Inherits="Project.UI.page" %>

ただし、検証がオフのときにユーザーが追加する可能性のある悪意のあるスクリプトがないか、html を注意深く確認してください。

更新: これをユーザー コントロールの分離コードに追加してみてください。

protected void Page_Init(object sender, EventArgs e)
{
    try
    {
        ((umbraco.UmbracoDefault)this.Page).ValidateRequest = false;
    }
    catch { }
} 
于 2012-07-20T09:42:25.847 に答える