gpt4 book ai didi

c# - ms 统一和多个构造函数

转载 作者:太空宇宙 更新时间:2023-11-03 11:30:26 25 4
gpt4 key购买 nike

我试图让 ms unity 将对象注入(inject)构造函数,但由于类具有多个构造函数和相同数量的参数而遇到问题。我知道您可以注释构造函数,但我不想那样做。我怎样才能统一使用正确的构造函数

我的构造函数是这样的:-

  public JobsHandler(ICentralRepositoryContainer context)
public JobsHandler(ICentralRepositoryLifeTimehelper centralRepositoryLifeTimehelper)

我正在使用我发现的一些代码:-

  uContainer.RegisterType<ICentralRepositoryContainer, Entities>().Configure<InjectedMembers>().
ConfigureInjectionFor<JobsHandler>(new InjectionConstructor());

但是在得到一个

The type CentralRepository.BusinessLogic.JobsHandler does not have a constructor that takes the parameters ()

我猜这是因为我没有在 injectionconstructor 对象中指定参数。我这样做正确吗?

最佳答案

我想你会想要解析 ICentralRepositoryContainer 并在 InjectionConstructor 中使用它

uContainer.RegisterType<ICentralRepositoryContainer, Entities>().Configure<InjectedMembers>().ConfigureInjectionFor<JobsHandler>(
new InjectionConstructor(new ResolvedParameter(typeof(ICentralRepositoryContainer)));

或者在指定构造函数的同时注册作业处理程序。

uContainer.RegisterType<ICentralRepositoryContainer, Entities>();
uContainer.RegisterType<JobsHandler>(new InjectionConstructor(new ResolvedParameter(typeof(ICentralRepositoryContainer))));

有关上述内容的更完整示例,请参阅此链接:

http://msdn.microsoft.com/en-us/library/ff650036.aspx

关于c# - ms 统一和多个构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7967592/

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