如何使用zenject创建带有多个参数重载的create方法的工厂(或者如何以不同的方式解决此问题)?
我想要能够
var x = factory.Create("bla bla");//string
x = factory.Create();//parameterless
x = factory.Create(1);//int
x = factory.Create(1,2);//int,int
x = factory.Create("bla bla",2);//string,int发布于 2017-08-12 15:58:15
一种方法是创建一个包含最大数量参数的工厂,然后提供额外的方法,使用缺失值的默认值,如下所示:
public class Foo
{
[Inject]
public string Value1;
[Inject]
public int Value2;
public class Factory : Factory<string, int, Foo>
{
public Foo Create(string value1)
{
return Create(value1, 0);
}
public Foo Create()
{
return Create("default");
}
}
}https://stackoverflow.com/questions/45489612
复制相似问题