gpt4 book ai didi

c# - 有2个构造函数是正确的,一个用于依赖注入(inject),另一个用于解析注入(inject)?

转载 作者:太空狗 更新时间:2023-10-30 00:44:16 24 4
gpt4 key购买 nike

我的类中有 2 个构造函数:

public class CacheWebServices : ICacheWebService
{
public ICache apiConnector { get; set; }

public CacheWebServices(ICache ApiConnector)
{
apiConnector = ApiConnector;
}

public CacheWebServices()
: this(new VuelingCache())
{ }
}

如您所见,我有一个依赖于 IVuelingCache 的构造函数和一个创建实例以传递给第一个构造函数的默认构造函数。这是正确的吗?这样我就摆脱了工厂类。

最佳答案

这是确保您拥有有效的 IVuelingCache 实例的一种方法 - 这种模式有一个名称 - 穷人的依赖注入(inject)。

Some see this作为一种反模式,因为您正在将“默认”实现硬编码到您的代码中。

关于c# - 有2个构造函数是正确的,一个用于依赖注入(inject),另一个用于解析注入(inject)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8295060/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com