為您解讀.NET Framework內置程序集內容
如何正確運用.NET Framework幫助我們提高編程效率,對于一個編程人員來說是非常重要的。我們在這里先來了解一下通過對.NET Framework內置程序集的調試來完成相關功能的具體操作方法。#t#
最近想實現GridView+存儲過程的分頁:
1)使用GridView內置的分頁模板. 畢竟內置的已經很好了.
2)類似DataGrid的VirtualItemCount, 設置一個VirtualCount,希望GridView就展現對應的頁數
3)Page的基類(PageBase.cs) , 自動take care翻頁事件.
4)Page根據基類處理后的結果,向DAO請求當前頁數據.(取20條在100w條中)
未能解決, 陷入到PagedDataSource類中. 仍不知所以. 決定追蹤GridView RenderPager的過程.
調試.NET Framework內置程序集:
1)生成IL文件: ildasm /tok /byt system.web.dll /out=system.web.il
2)重新生成PDB/DLL: ilasm system.web.il /DEBUG /DLL /OUTPUT=System.Web.dll , 將生成dll/pdb兩個文件
3)殺死占用system.web.dll 的進程: W3WP,Aspnet_state,VisualStudio2005.
4)拷貝dll/pdb到GAC: copy system.web.pdb c:\windows\assembly\GAC_32\system.web\2.0.0.0__b03f5f7f11d50a3a\
5)VS2005-工具-選項-調試-常規, 取消勾選:"僅我的代碼"
6)正常調試一個頁,跟進:this.gridView.DataBind(). 即可跟進到System.Web.IL文件中了.
.NET Framework內置程序集的調試可能需要的:
7)取消System.Web.dll強名稱校驗: sn -Vr System.Web.dll
8)注冊到GAC : gacutil -i system.web.dll