2011-02-01 78 views
1

我無法重現此錯誤,因爲它很少發生在我打開相同的URL時。或者你有任何想法顯示出現這個問題的原因。執行處理程序的子請求時出錯的原因是什麼?

執行處理程序'System.Web.Mvc.HttpHandlerUtil + ServerExecuteHttpHandlerWrapper'的子請求時出錯。

at System.Web.HttpServerUtility.ExecuteInternal(IHttpHandler handler, TextWriter writer, Boolean preserveForm, Boolean setPreviousPage, VirtualPath path, VirtualPath filePath, String physPath, Exception error, String queryStringOverride) 
    at System.Web.HttpServerUtility.Execute(IHttpHandler handler, TextWriter writer, Boolean preserveForm, Boolean setPreviousPage) 
    at System.Web.HttpServerUtility.Execute(IHttpHandler handler, TextWriter writer, Boolean preserveForm) 
    at System.Web.HttpServerUtilityWrapper.Execute(IHttpHandler handler, TextWriter writer, Boolean preserveForm) 
    at System.Web.Mvc.ViewPage.RenderView(ViewContext viewContext) 
    at System.Web.Mvc.WebFormView.RenderViewPage(ViewContext context, ViewPage page) 
    at System.Web.Mvc.WebFormView.RenderView(ViewContext viewContext, TextWriter writer, Object instance) 
    at System.Web.Mvc.BuildManagerCompiledView.Render(ViewContext viewContext, TextWriter writer) 
    at System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context) 
    at System.Web.Mvc.ControllerActionInvoker.InvokeActionResult(ControllerContext controllerContext, ActionResult actionResult) 
    at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass1c.<InvokeActionResultWithFilters>b__19() 
    at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilter(IResultFilter filter, ResultExecutingContext preContext, Func`1 continuation) 
    at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass1c.<>c__DisplayClass1e.<InvokeActionResultWithFilters>b__1b() 
    at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilter(IResultFilter filter, ResultExecutingContext preContext, Func`1 continuation) 
    at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass1c.<>c__DisplayClass1e.<InvokeActionResultWithFilters>b__1b() 
    at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilter(IResultFilter filter, ResultExecutingContext preContext, Func`1 continuation) 
    at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass1c.<>c__DisplayClass1e.<InvokeActionResultWithFilters>b__1b() 
    at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult) 
    at System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName) 

PS。我有過這個問題。但是我的舊bug總是顯示這樣的錯誤,這是由ViewPage中的語法錯誤引起的,另一個錯誤是由擴展方法中的錯誤引起的。

回答

2

那麼有沒有在你的問題中的信息是對我們說究竟什麼錯誤是因爲它看起來像你對我在這裏給這個堆棧跟蹤其實只有最外層的例外。我們需要看到內部異常層次結構能夠更好地診斷。

但是......

這將是一個錯誤,而通過任何視圖渲染Asp.Net運行的代碼。它可能是錯誤的服務器端代碼(編譯器錯誤)或運行時錯誤,例如NullReferenceException直接出現在頁面的代碼中或頁面調用的組件(例如,如您所說,HtmlHelper)中。

理論上你應該看到一個Asp.Net錯誤頁面,顯示aspx中的哪一行導致了這個問題。

我會附加調試器,並確保'Thrown'列在Debug-> Exceptions對話框中打勾。然後再次點擊相同的頁面,你應該看到發生錯誤的確切位置。我知道這個問題在一段時間內只發生一次 - 因此,我會查看該頁面內的代碼(事實上是服務於其View Model的控制器),其中數據依賴於某個變量(當前用戶,甚至一天的時間),然後看看它是否可以爲空或其他。

+0

我有一些鎖定變量緩存的東西。這是問題的原因嗎? – 2011-02-01 12:19:58

相關問題