「Open棟梁 wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
不正操作防止機能では以下を抑止します。
上記に該当するような操作を行っていないか、
fiddler - http debugging proxy等を使用して分析してみてください。
また、Sessionにブラウザ・ウィンドウ毎のRequestチケットを格納しているので、
セッション消去(FxSessionAbandon)によって、不正操作が誤検知されることがあります。
他の処理と干渉し合う場合、不正操作防止機能を部分的にOFFに設定できます。
this.CanCheckIllegalOperation = false;
とthis.CanCheckIllegalOperationプロパティにfalseのフラグを設定します。
ボタン単位等の局所化が必要な場合は、以下の方法に従ってください。
/// <summary>不正操作防止機能の局所化</summary> void Page_Init(object sender, EventArgs e) { foreach (string key in Request.Form.Keys) { if (key.IndexOf("btnIllegalOperationCheckOFF") != -1) { // btnIllegalOperationCheckOFFボタンで // サブミットされた場合、不正操作防止機能をOFFにする。 this.CanCheckIllegalOperation = false; } } }
<!-- 不正操作防止機能のon・off(操作履歴の最大数) --> <add key="FxRequestTicketGuidMaxQueueLength" value="0"/>"FxRequestTicketGuidMaxQueueLength=0"(0以下の値)を設定して、不正操作防止機能の機能OFFにします。
/// <summary>不正操作防止機能の局所化</summary> void Page_Init(object sender, EventArgs e) { // 当該画面だけ、不正操作防止機能をONにする(*.configはOFFに設定)。 this.CanCheckIllegalOperation = true; foreach (string key in Request.Form.Keys) { if (key.IndexOf("btnIllegalOperationCheckON") != -1) { // btnIllegalOperationCheckONボタンで // サブミットされた場合、不正操作防止機能をONにする。 this.CanCheckIllegalOperation = true; } } }