完整的錯誤是 - 「值不能爲空。參數名稱:virtualPath」。這發生在我們的質量保證和培訓環境(Win 2003 Server & IIS6)中,但當然不會在調試器中重新創建。更糟糕的是,儘管有一個合理的全局錯誤處理程序,但沒有任何堆棧跟蹤伴隨錯誤發生,並且沒有任何內容寫入事件日誌。該應用程序是在2.0框架下運行的大型完全全球化的Asp.Net(VB)Web應用程序。它對resx文件使用通常的「App_LocalResources」結構,迄今爲止表現相當好。有在應用幾個地方,這樣的代碼被用於:隨機「virtualPath」錯誤 - Asp.Net應用程序
Dim x As New Compilation.ExpressionBuilderContext(Control.TemplateControl)
Dim path As String = x.VirtualPath
Dim res As String = HttpContext.GetLocalResourceObject(path, resourceKey).ToString
但是解決這個代碼try/catch塊正常工作時,我強迫「路徑」變量是什麼。我們還到處使用這個語法數據網格的列標題:
<asp:TemplateColumn HeaderText="<%$ Resources:resHeader %>" >
我們還使用了大量的Ajax和動態的ascx控件加載到佔位符不斷。如果有人對此有所瞭解,我將非常感謝幫助。
謝謝,拉里