close

話說以前在公司算是一個程式作業員…
人家說怎麼做我們就要怎麼做…我只需要 ctrl + C、ctrl + V 就結束了…
程式版本升級…也是等其他人研究好,我再來跟著改就好了
(看似很閒,但改起來也是一、二百支程式的.....)

現在這份工作跟前一份比較來超輕鬆的.....
(別開心的太早…可能是蜜月期啦!)
但時不時會有突然的狀況…
EX:今天用VS2005開發好的程式…準備上線,結果長官的一句話,馬上要改成VS2010....
還好是小程式…沒有太花俏的功能…這次升級碰到了一個問題…

在VS2005的<pages validateRequest="false" /> 
在VS2010完全沒有功用…

找一下估狗大師…大師就是大師…一下就找到解答了…

原來是.NET 4.0跟2.0版本在請求驗證的定義不同:

ASP.NET Request Validation 請求驗證是ASP.NET提供來保護XSS攻擊的一項功能

在2.0 僅針對.aspx及class進行驗證…

但到了4.0,請求驗認範圍擴大到所有的請求…

而不是只有.aspx,還包含WebService呼叫以及自訂的http Handlers,都會去驗證http請求的內容…

所以才會發生<pages validateRequest="false" /> 設定無效的情形…

而這個問題的解法是…在Web.config中<system.web>中加入

這段 <httpRuntime requestValidationMode="2.0" />就ok了!!!


資料來源:http://www.dotblogs.com.tw/pin0513/archive/2010/10/22/18522.aspx

arrow
arrow
    文章標籤
    .NET 4.0
    全站熱搜

    雅雅 發表在 痞客邦 留言(0) 人氣()