C# c依赖项没有得到实例化

C# c依赖项没有得到实例化,c#,instantiation,C#,Instantiation,我有一个带有依赖项的抽象类,我想添加一个检查来查看Loghelper是否为null,以及它是否为创建对象。我得到的错误是找不到Loghelper 如何实例化依赖关系 您应该有一个构造函数,在其中传入依赖项引用,然后将属性设置为与传入的参数相等 ... private ILogHelper _logHelper; public ControllerBase(ILogHelper logHelper) { this._logHelper = logH

我有一个带有依赖项的抽象类,我想添加一个检查来查看Loghelper是否为null,以及它是否为创建对象。我得到的错误是找不到Loghelper

如何实例化依赖关系


您应该有一个构造函数,在其中传入依赖项引用,然后将属性设置为与传入的参数相等

    ...
    private ILogHelper _logHelper;

    public ControllerBase(ILogHelper logHelper)
    {
        this._logHelper = logHelper;
    }
    ...

我得到的错误是找不到Loghelper?你得到的确切错误是什么?这是编译时错误吗?运行时错误?同样的错误是编译错误不知道我是什么missing@Marc下面的答案应该是可行的,但是你可以尝试另一种方法。使用上面的代码,如果null==LogHelper{LogHelper=new LogHelper;}则删除。如果删除这些行,它是否编译并运行成功?另外,请告诉我们您在哪里使用IoC容器注册ILogHelper?我假定是Unity?我只有公共ILogHelper LogHelper{get;set;}@Jefferson然后忽略Marc答案的第一行,删除它并将赋值更改为this.LogHelper=LogHelper;LogHelper仍设置为空错误消息为{对象引用未设置为对象的实例。}我需要新的吗?@Jefferson请更新您的问题在此处保留旧代码,添加一些额外代码以显示您尝试实现Marc答案的代码。您没有正确实现Marc的答案。例如,您没有添加公共ControllerBase构造函数。
    ...
    private ILogHelper _logHelper;

    public ControllerBase(ILogHelper logHelper)
    {
        this._logHelper = logHelper;
    }
    ...