You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET MissingMethodException:.ctor报错 类库带默认参数构造函数实例化异常

问题原因
  • 同名类型绑定冲突:你的项目中存在两个同名的appLogic类,分别位于Lib.Models和Lib.viewModels.app命名空间下。使用using语句时,你引入的是修改过的、带可选参数构造函数的appLogic所在的命名空间,编译器会绑定到正确的类型,因此运行正常。手动写全限定名调用时,编译器误绑定到了Lib.Models下的appLogic类,该类没有匹配的无参构造函数,因此触发报错。
  • 程序集版本不匹配:你修改类库代码后,没有重新生成所有引用该类库的项目,部分项目仍引用旧版本的类库程序集。带默认参数的构造函数在编译时会被处理为调用方传入默认值,旧版本程序集中的appLogic没有对应签名的构造函数,运行时就会抛出方法找不到的异常。
解决方案
  • 修正构造函数调用方式:调用时显式传入null匹配构造函数签名,避免编译器查找无参构造函数:
Lib.viewModels.app.appLogic alogic = new Lib.viewModels.app.appLogic(null);
x = alogic.method();
  • 强制更新程序集引用:右键解决方案选择「清理解决方案」,再执行「重新生成解决方案」,确保所有项目引用的都是最新编译的类库代码。
  • 显式声明无参构造函数:直接在appLogic类中添加无参构造函数,彻底避免签名匹配问题:
public class appLogic
{
    private DB db = new DB();

    public appLogic()
    {
    }

    public appLogic(DB dbx)
    {
        if (dbx != null)
        {
            db = dbx;
        }
    }
}

内容的提问来源于stack exchange,提问作者Julian Dormon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 23:39:06