Dependency injection 我可以使用Ioc模式实现以下目标吗

Dependency injection 我可以使用Ioc模式实现以下目标吗,dependency-injection,castle-windsor,ioc-container,spring.net,castle,Dependency Injection,Castle Windsor,Ioc Container,Spring.net,Castle,我有两个类实现了相同的静态方法,如下所示 Class A { static OpB(); } Class B { static OpB(); } 我可以使用Ioc模式使用配置切换ClassA和ClassB吗? 或者任何解决方法或建议?IoC模式几乎禁止您使用静态方法,因为它侧重于创建类型(服务)的实例。静态方法不是实例方法,因此IoC容器会给您一个实例,但您不能对实例调用静态方法 如果可以删除OpB()方法上的静态限定符,则可以使用IoC执行所需操作。不能使用静态方法切换类。使它们

我有两个类实现了相同的静态方法,如下所示

Class A
{
  static OpB(); 
}

Class B
{
  static OpB();
}
我可以使用Ioc模式使用配置切换ClassA和ClassB吗?
或者任何解决方法或建议?

IoC模式几乎禁止您使用静态方法,因为它侧重于创建类型(服务)的实例。静态方法不是实例方法,因此IoC容器会给您一个实例,但您不能对实例调用静态方法


如果可以删除OpB()方法上的静态限定符,则可以使用IoC执行所需操作。

不能使用静态方法切换类。使它们与实例相关,并从同一接口或类派生这两个类。如果方法名称和参数相同,您可以使用反射根据某些配置调用不同类的静态方法。如果不允许更改现有代码,您可以围绕现有类创建包装器。