我知道我可以将值传递给单个实例:
container.Register(() => new Service(value));
但是我想使用程序集集合来注册实例集合,如下所示:
container.RegisterCollection<IService>(assemblies);
所有实例具有相等的构造函数签名。如何将值传递给所有构造函数?
更新
由于史蒂文的评论,我需要澄清一下我想传递的值是CancellationToken
。
依赖原始值不是一个好主意。服务应依赖抽象。创建一个描述提供必要值的服务的新接口,并使实例依赖于此。如果不同的实例需要不同的值,则它们应依赖单独的接口来提供值。该答案提供了更多详细信息,并提供了有关如何实现您要执行的操作的示例。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句