System.MissingMethodException: ¿Método no encontrado?
La aplicación de formularios web asp.net que funcionaba anteriormente ahora arroja este error:
System.MissingMethodException: método no encontrado
El DoThis
método está en la misma clase y debería funcionar.
Tengo un controlador genérico como tal:
public class MyHandler: IHttpHandler
{
public void Processrequest(HttpContext context)
{
// throws error now System.MissingMethodException:
// Method not found.
this.DoThis();
}
public void DoThis(){ ... }
}
Este es un problema que puede ocurrir cuando todavía hay una versión antigua de una DLL en algún lugar. Asegúrese de que estén implementados los ensamblados más recientes y que no haya ensamblados antiguos duplicados ocultos en ciertas carpetas. Su mejor opción sería eliminar todos los elementos creados y reconstruir/volver a implementar la solución completa.
⚠️ Versión incorrecta del paquete Nuget ⚠️
Tenía un proyecto de prueba unitaria que incorporaba el paquete interno de acceso a datos EF Nuget de nuestra empresa y ese código extraía un paquete externo cuya versión estaba muy por detrás de la versión actual.
El problema era que la configuración de Nuget para el paquete de nivel superior estaba establecida en least version
; y ganó la versión de nivel inferior /anterior, y que se utilizó durante las operaciones....
Por lo tanto, obtuvo silenciosamente la versión incorrecta para un ensamblado común utilizado tanto por el paquete como por la aplicación.
💡 Solución 💡
Al configurar/actualizar el paquete en Nuget para usar y [obtener] la última versión , se solucionó el problema.