近日公司想要將asp.net 2.0的網站升級至 asp.net 4.0
需要評估網站升級需要的OS & Framework 的等級
就目前微軟在2022年公佈的 .NET Framework 各版本發行及 EOS 時間清單:
的資料看來,應該可以升級到到asp.net 4.5之間,
但我們遇到的第一個問題就是
asp.net2.0 轉出的元件id [ctl00_ContentPlaceHolder1_PanelParent]
與 asp.net 4.0 轉出的元件id為 [PanelParent]
Wath?
原來是因為 ASP.NET 4.0 預設的 clientIDMode 是使用 Predictable。
而ASP.NET 4.0 以前的版本 clientIDMode 都是使用 AutoID
處理的方法就是在web.config 中設定
<system.web>
<pages controlRenderingCompatibilityVersion="4.5" clientIDMode="AutoID">
</system.web>
暫時收工……
參考:
https://www.dotnetcurry.com/ShowArticle.aspx?ID=492 介紹 ClientIDMode 的用法
https://blog.darkthread.net/blog/net-4x-eos-issue/ 其他
https://dotblogs.com.tw/rainmaker/2014/09/15/146557 -為什麼我的控制項的 id 多了ctl00
來看