目前我使用一个通用接口声明的IoC依赖这样的:设计,可以“实现N次”
public interface IComposition<T>
{
T Dependency { get; set; }
}
可是偏偏我的实现可以有在同一时间超过一个依赖。
我知道这很荒谬,但只是为了你们明白我需要什么... 假设我实现接口多次以解决我的问题:
public class MyClass : IComposition<TypeA>, IComposition<TypeB>
{
...
}
我相信使用IComposition<T1, T2, ...>
或一个ITypeXDependent
对于每种类型都不是很好的选择。 我的核心需要在运行时使用反射来解决依赖关系。所以,这就是为什么我不通过构造函数传递依赖关系。
有谁知道一些可以帮助我的技巧吗?
你为什么不能简单地实现该接口多次,因为你已经说明? –
这种界面的原因似乎完全避开了我。你为什么想要这样的东西? –
另外,你有没有考虑通过构造函数注入你的依赖,而不是接口继承?无论如何,在测试过程中处理和使用会更容易。 –