我希望在我的应用程序中实现IOC,但是我很困惑,在我的应用程序中,有多个具体类实现了一个接口。考虑以下情况:
我有一个ICommand接口和以下实现该接口的具体类型:
- AddAddress - AddContact - RemoveAddress - RemoveContact
用户在UI中执行所有这些操作,然后将列表传递到服务层,在那里执行每个命令。
因此,在GUI层中,我将编写
我有一个ICommand接口和以下实现该接口的具体类型:
- AddAddress - AddContact - RemoveAddress - RemoveContact
用户在UI中执行所有这些操作,然后将列表传递到服务层,在那里执行每个命令。
因此,在GUI层中,我将编写
ICommand command1 = new AddAddress();
ICommand command2 = new RemoveContact();
在命令管理器中
List<ICommand> listOfCommands = List<ICommand>();
listOfCommands.Add(command1);
listOfCommands.Add(command2);
最后,将listOfCommands传递到服务层。
根据我的理解,IOC只有一个具体类映射到接口。我们使用以下语法从StructureMap容器获取我们的具体类型。
ICommand command = ObjectFactory.GetInstance<ICommand>();
在这种情况下,我应该如何实现IOC?