我們有一個使用.NET編寫的使用C#中的WebForms編寫的大型Web應用程序,我們有一個奇怪的問題。希望有人能幫助。我們有一個運行IIS7的測試環境,每當我們上傳修改後的文件(.aspx,.aspx.cs,.ascx,.ascx.cs等)時,我們在嘗試訪問修改過的頁面時會遇到以下異常 - 但只有大約30秒。然後應用程序正常運行。.NET網站編譯期間出現間歇性的NullReferenceException
[NullReferenceException: Object reference not set to an instance of an object.]
System.Web.Script.Services.WebServiceData.GetWebServiceData(HttpContext context, String virtualPath, Boolean failIfNoData, Boolean pageMethods, Boolean inlineScript) +251
System.Web.Script.Services.PageClientProxyGenerator.GetClientProxyScript(HttpContext context, IPage page, Boolean debug) +49
System.Web.UI.ScriptManager.RegisterServices() +511
System.Web.UI.ScriptManager.OnPagePreRenderComplete(Object sender, EventArgs e) +120
System.Web.UI.Page.OnPreRenderComplete(EventArgs e) +8699694
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1029
正如你可以看到它似乎是一個Web服務無法初始化,因爲什麼是null,HttpContext也許?!
這種情況只發生在這個測試環境中,它發生在我們本地的機器上,但很少發生。它從不在生產環境中發生。我原本以爲這跟我們使用的AJAX控件工具有關。我找不到任何關於它的文檔,除了少數沒有回覆的論壇主題外。
不完全確定我可以如何進一步縮小此範圍。我們在同一臺機器上運行的臨時環境不會遇到問題。我可能會在IIS中創建一個新站點,並指出它是否有幫助,歡迎提供任何建議。
一如既往,感謝您的時間。
原來,在主頁面中,如果Ajax Control Toolkit的ToolkitScriptManager上的EnablePageMethods設置爲「false」,問題就會消失。必須是幕後管理員使用的某種服務!停止使用它的所有未來項目 - 使用MVC的jQuery UI而不是:) – greg84 2012-01-23 14:43:22