问题:
以前可以正常运行的 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中文网其他相关文章!