エラー対応
mindiaエラー対応記事

危険な可能性のある Request.Form 値 エラー

!! (^ ..O ^ ) !! SHINYA · 2008-12-21

環境】 
windows 2003 + IIS
ASP.NET
VB.NET

エラー内容】
事象としては フォーム入力をした際にうまくページ遷移せずエラーとなる

エラー内容を確認すると

危険な可能性のある Request.Form 値がクライアント ("●●●") から検出されました。
Source:System.Web
Stack: at System.Web.HttpRequest.ValidateString(String s, String valueName, String collectionName)
at System.Web.HttpRequest.ValidateNameValueCollection(NameValueCollection nvc, String collectionName)
at System.Web.HttpRequest.get_Form()
at System.Web.UI.Page.GetCollectionBasedOnMethod()
at System.Web.UI.Page.DeterminePostBackMode()
at System.Web.UI.Page.ProcessRequestMain()

とでている

【内容・推測】
.net の仕様でセキュリティチェックがされる
デフォルトでチェックされるようになっている

対応
C:\WINDOWS\Microsoft.NET\Framework\V999999\CONFIG\machine.config
の ValidateRequest の値がデフォルトで true になっているので falseにする(validateRequest="false")

ASPXの最初の行の <@ Page >タグ内に記述する
記述例(最後の ValidateRequest="False" ):
<%@ Page CodeBehind="XXXXXX.vb" Language="vb" AutoEventWireup="false" Inherits="XXXX.YYYY" trace="False" ValidateRequest="False" %>

注意:999999は.netのバージョン

見出し語

コメント

emsi · 2010-03-25

とても参考になりました!
ありがとうございました^^