在偶然发现生产服务器中的一个问题时,当IIS AppPool回收时,应用程序开始显示错误“错误的方法令牌”。在重新启动AppPool之前,它将给出错误。在stacktrace中报告的文件是“ C:\ WINDOWS \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Temporary ASP.NET Files \ root \”中的IIS生成的文件。我也有观察者的情况,其中生成的文件给出错误,然后重新启动AppPool,但是在IIS提供相同文件的同时,重新启动后没有错误。在IIS TEMP文件中正在调用的方法是Page.ProcessRequest(HttpContext)。 AppPool重新启动后,它将一直工作到下一次回收为止。在开发或测试机器中都不会出现问题。
我在日志中收到的消息:
Application_Error:
System.BadImageFormatException: Bad method token.
at ASP.page_aspx.ProcessRequest(HttpContext context)
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step)
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
应用程序是ASP.NET Web窗体,构建目标是.NET Framework 4.7.2,所有dll-都是MSIL(任何CPU)。 我全都不知道是什么原因造成的。我非常感谢您的任何建议。 (看什么,看哪里,什么时候看)