加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

C#将当前对象传递给另一个对象?

发布时间:2020-12-15 23:51:32 所属栏目:百科 来源:网络整理
导读:我正在创建一个具有这样的构造函数的对象…… public class BusinessLogic(){ public BusinessLogic() { BusinessLogicSubClass blsc = new BusinessLogicSubClass(and I want to pass in BusinessLogic here) }} 我这样做是因为我希望BusinessLogicSubClass
我正在创建一个具有这样的构造函数的对象……

public class BusinessLogic()
{

     public BusinessLogic()
      {

           BusinessLogicSubClass blsc = new BusinessLogicSubClass(and I want to pass in BusinessLogic here)
      }
}

我这样做是因为我希望BusinessLogicSubClass在完成一个或另一个方法时回调到BusinessLogic中的各种方法. BusinessLogicSubClass还使用构造函数注入,以使我的单元测试与NMock2一起使用.

这里的任何建议都会有所帮助,谢谢你提前!

解决方法

public BusinessLogic()
  {
       BusinessLogicSubClass blsc = new BusinessLogicSubClass(this);
  }

另一种方法(解决Jon Skeet的评论)将是一个构造函数和一个初始化程序,它使用“this”指针:

public class BusinessLogic 
{
    private BusinessLogicSubClass blsc = null;

    public BusinessLogic() {}

    public void Initialize()
    {
        blsc = new BusinessLogicSubClass(this);
    }
}

public class Implementor
{
    public void SomeFunction()
    {
        BusinessLogic bl = new BusinessLogic();
        bl.Initialize();
    }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读