ASP.NET 4.0升級至ASP.NET 4.5需要注意的地方


原以為只要在Visual Studio 2012中將每個項目的Target framework設置為.NET Framewor 4.5進行編譯,然后在web.config中設置compilation的targetFramework為4.5,就升級到了ASP.NET 4.5。

<compilation targetFramework="4.5"/>

后來發現這樣是不夠的,還需要在web.config中設置httpRuntime的targetFramework。

<httpRuntime targetFramework="4.5"/>

這樣才算真正升級至ASP.NET 4.5。

升級之后有兩個地方需要特別注意:

1. web.config中machineKey的設置

ASP.NET 4.5的默認設置是:

<machineKey compatibilityMode="Framework45" />

ASP.NET 4.5對表單驗證的加/解密算法進行了改進,如果不是同時將所有ASP.NET應用程序升級至ASP.NET 4.5,為了保持表單驗證的兼容性,需要修改compatibilityMode的設置。

<machineKey compatibilityMode="Framework20SP1"/>
<machineKey compatibilityMode="Framework20SP2"/>

2. 對WebForms表單驗證控件的影響

如果用到了<asp:RequiredFieldValidator/>這樣的驗證控件,會出現下面錯誤:

WebForms UnobtrusiveValidationMode requires a ScriptResourceMapping for 'jquery'. Please add a ScriptResourceMapping named jquery(case-sensitive). 

解決方法:在web.config的<appSettings>中添加如下的設置

<add key="ValidationSettings:UnobtrusiveValidationMode" value="None" />

您在升級至ASP.NET 4.5中發現什么需要注意的地方,期待您的分享!

 

參考資料:

All about <httpRuntime targetFramework>

Cryptographic Improvements in ASP.NET 4.5


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM