問題:
以前可以正常運行的 ASP.NET Web 窗體應用程式現在在通用處理程序中呼叫 DoThis
方法時會產生「System.MissingMethodException:找不到方法」錯誤。
背景:
DoThis
方法與通用處理程序位於同一類別中。 <code class="language-csharp">public class MyHandler : IHttpHandler { public void ProcessRequest(HttpContext context) { // Now throws System.MissingMethodException: Method not found. this.DoThis(); } public void DoThis() { ... } }</code>
解:
此異常通常是由包含 DoThis
的 DLL 與應用程式引用的 DLL 之間的版本衝突引起的。 解決方法如下:
清理編譯檔:刪除~/App_Code/bin
和~/bin/
目錄中的所有檔案。 這可確保不會有過時的編譯程式碼幹擾。
重建和重新部署:對您的解決方案執行全新重建並將其重新部署到您的伺服器。這保證了最新程序集版本的部署。
消除重複程序集: 檢查隱藏資料夾中是否有任何重複或較舊的組件,例如 ~/bin/Debug
或 ~/bin/Release
。 刪除任何不必要或過時的版本。
按照以下步驟操作,應該可以解決「System.MissingMethodException:找不到方法」錯誤,從而使您的應用程式能夠正確呼叫 DoThis
方法。
以上是為什麼我的 ASP.NET Web 窗體應用程式會拋出'System.MissingMethodException”?的詳細內容。更多資訊請關注PHP中文網其他相關文章!