gpt4 book ai didi

c# - 工厂模式,返回一个泛型类并有一个参数

转载 作者:太空宇宙 更新时间:2023-11-03 13:52:13 32 4
gpt4 key购买 nike

我有这个工厂模式的实现

public interface IFactory<T>
{
T GetObject();
}

public class Factory<T> : IFactory<T> where T : new()
{
public T GetObject()
{
return new T();
}
}

但我想要GetObject返回泛型类的实例 Repository<Customer> ( Repository implement IRepository ) 并且工厂有一个参数(ISession 类型)

结果应该是:

IRepository<ICustomer> myRepo = new Factory<ICustomer>(session);

我该怎么做?

谢谢,

最佳答案

考虑改用无参数构造函数,以及一些接受参数的初始化函数。除了不能通过你的工厂传递参数之外,考虑一下你想要反序列化你的对象的情况。它们应该被构建,然后参数应该被一个一个地填充。

关于c# - 工厂模式,返回一个泛型类并有一个参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13406196/

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