天天看點

DNN調試利器DNNDebug.aspx--如何調試出錯資訊不具體的程式錯誤

有些時候DNN中程式出錯的提示沒有指出具體的出錯位置,如果使用斷點跟蹤也不知在何處插入斷點,這樣我們debug完全隻能靠猜測,比如如下的出錯提示:

DNN調試利器DNNDebug.aspx--如何調試出錯資訊不具體的程式錯誤
Error
DNN調試利器DNNDebug.aspx--如何調試出錯資訊不具體的程式錯誤
Error: Edit Content is currently unavailable.
DNN調試利器DNNDebug.aspx--如何調試出錯資訊不具體的程式錯誤
DotNetNuke.Services.Exceptions.ModuleLoadException: 
DNN調試利器DNNDebug.aspx--如何調試出錯資訊不具體的程式錯誤
External component has thrown an exception. ---> System.Web.HttpCompileException: External component has thrown an exception. 
DNN調試利器DNNDebug.aspx--如何調試出錯資訊不具體的程式錯誤
at System.Web.Compilation.AssemblyBuilder.Compile() 
DNN調試利器DNNDebug.aspx--如何調試出錯資訊不具體的程式錯誤
at System.Web.Compilation.BuildProvidersCompiler.PerformBuild() 
DNN調試利器DNNDebug.aspx--如何調試出錯資訊不具體的程式錯誤
at System.Web.Compilation.BuildManager.CompileWebFile(VirtualPath virtualPath) 
DNN調試利器DNNDebug.aspx--如何調試出錯資訊不具體的程式錯誤
at System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile) 
DNN調試利器DNNDebug.aspx--如何調試出錯資訊不具體的程式錯誤
at System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile) 
DNN調試利器DNNDebug.aspx--如何調試出錯資訊不具體的程式錯誤
at System.Web.UI.TemplateControl.LoadControl(VirtualPath virtualPath) 
DNN調試利器DNNDebug.aspx--如何調試出錯資訊不具體的程式錯誤
at System.Web.UI.TemplateControl.LoadControl(String virtualPath) 
DNN調試利器DNNDebug.aspx--如何調試出錯資訊不具體的程式錯誤
at DotNetNuke.UI.Skins.Skin.InjectModule(Control objPane, ModuleInfo objModule, PortalSettings PortalSettings) in 
DNN調試利器DNNDebug.aspx--如何調試出錯資訊不具體的程式錯誤
E:\Development\DotNetNuke\InstallArea\DotNetNuke_04.08.03_Source\Library\Components\Skins\Skin.vb:line 492 --- End of inner exception stack trace ---
DNN調試利器DNNDebug.aspx--如何調試出錯資訊不具體的程式錯誤
使用這個檔案就可清楚的看到是哪裡出了問題:

  1. 下載下傳 DNNDebug.rar 檔案并解壓得到 "DNNDebug.aspx" 檔案
  2. 把這個檔案放在DotNetNuke網站的根目錄裡
  3. 然後在浏覽器裡通路這個檔案 (如: http://localhost/Dotnetnuke/DNNDebug.aspx )
  4. 輸入加載時出錯的web contol位址(比如: ~/DesktopModules/Feedback/Feedback.ascx)
  5. 如果幫你解決的大問題,你可以給作者 Nik 發個郵件表示感謝

注意!

網站釋出時一定要删除這個檔案!!

附:修正了一個BUG

<head>标簽沒有使用runat="server"屬性,這有時會導緻報錯。比如一個控件試圖尋找<head>控件并在其中注冊JavaScript

繼續閱讀