use*_*007 226 c# asp.net dll httphandler nuget
什么曾经在我的asp.net webforms应用程序中工作现在抛出此错误:
System.MissingMethodException:找不到方法
该DoThis
方法在同一个类上,它应该工作.
我有一个通用的处理程序:
public class MyHandler: IHttpHandler
{
public void Processrequest(HttpContext context)
{
// throws error now System.MissingMethodException: Method not found?
this.DoThis();
}
public void DoThis()
{
//
}
}
Run Code Online (Sandbox Code Playgroud)
Pol*_*ity 357
这是一个问题,当旧版本的DLL仍然在某处挥之不去时,可能会发生这种问题.确保部署了最新的程序集,并且没有重复的旧程序集隐藏在某些文件夹中.您最好的选择是删除每个构建的项目并重建/重新部署整个解决方案.
Ben*_*pka 25
我通过在服务器上安装正确的.NET Framework版本来解决此问题.该网站在4.0版本下运行,它调用的程序集编译为4.5.安装.NET Framework 4.5并将网站升级到4.5后,一切正常.
Ωme*_*Man 22
错误的Nuget包版本
我有一个单元测试项目,该项目吸引了我们公司的EF Nuget数据访问包,该版本远远落后于当前版本.
将前述包的Nuget设置设置为least version
那些作为第二级依赖包的其他包.
因此,它默默地为相关程序集提供了错误的版本.
解
通过设置/更新Nuget中的包来[get]最新修复的问题.
我刚刚在.NET MVC项目中遇到过这个问题.根本原因是NuGet包的冲突版本.我有几个项目的解决方案.每个项目都有一些NuGet包.在一个项目中,我有一个企业库语义记录包的版本,在另外两个项目(引用第一个)中,我有相同包的旧版本.这一切都编译没有错误,但当我尝试使用该包时,它给出了一个神秘的"找不到方法"错误.
修复是从两个项目中删除旧的NuGet包,因此它只包含在实际需要它的一个项目中.(我也对整个解决方案进行了彻底的重建.)
检查您的参考!
确保您在解决方案项目中始终指向相同的第三方库(不仅仅是信任版本,而是着眼于路径)。
例如,如果在一个项目中使用iTextSharp v.1.00.101,而在其他地方使用NuGet或引用iTextSharp v1.00.102,您将得到这些类型的运行时错误,这些错误会以某种方式滴入您的代码中。
我在所有3个项目中都将对iTextSharp的引用更改为指向相同的DLL,并且一切正常。
归档时间: |
|
查看次数: |
250900 次 |
最近记录: |