【问题标题】:The correct way of using UnitOfWork in Repository Pattern在 Repository Pattern 中使用 UnitOfWork 的正确方法
【发布时间】:2015-11-14 21:27:20
【问题描述】:

我正在尝试遵循 MSDN 上有关使用工作单元和存储库模式的教程,但我偶然发现了以下内容:

private UnitOfWork unitOfWork = new UnitOfWork();

“此代码为 UnitOfWork 类添加了一个类变量。(如果您在此处使用接口,则不会在此处初始化该变量;相反,您将实现两个构造函数的模式”

基本上,我需要在我的 LogController 中调用我的 UnitOfWork 类而不实际使用上面的代码,因为我正在使用接口?这怎么可能?我不确定“两个构造函数”是什么意思。

任何建议都会被欣赏

【问题讨论】:

    标签: asp.net repository unit-of-work


    【解决方案1】:

    在你的类中定义

    Private IUnitOfWork _unitOfWork = null;
    

    你有一个接受 IUnitOfWork 的构造函数,所以调用者可以传入一个实现:

    Public MyClass (IUnitOfWork unitOfWork) {
      _unitOfWork = unitOfWork;
    }
    

    你有另一个没有,但知道如何去找到要创建的实现。它可以使用默认实现,也可以转到您编写的某个配置文件以定义要使用的类型等。

    在 MyClass 中你仍然调用 _unitOfWork.whateverMethod()

    【讨论】:

      猜你喜欢
      • 2012-01-31
      • 1970-01-01
      • 2012-09-20
      • 2023-03-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-23
      • 1970-01-01
      相关资源
      最近更新 更多