作为学习 IoC 概念的一部分,我正在探索 TinyIOC。我已经掌握了基础知识,但我想知道,当解决方案中有多个项目时,我是否可以为他们自己的项目中的相关类进行引导(将 ioc 容器传递给每个单独项目中的 boostrapper 类)。
目前我有一个用于测试的控制台应用程序。它包含以下引导程序,它注册解决方案中其他两个项目的所有相关类:
namespace ConsoleTest
{
public static class Bootstrapper
{
public static void Register()
{
var container = TinyIoCContainer.Current;
//Appname.Models
container.Register<IScheduleBuilder, ScheduleBuilder>();
container.Register<ReviewSetup>();
container.Register<ReviewSetupConfiguration>();
//Appname.Data
container.Register<IRepository<ReviewSetup>>(new ReviewSetupRepository());
}
}
}
有没有可能做这样的事情:
namespace ConsoleTest
{
public static class Bootstrapper
{
public static void Register()
{
var container = TinyIoCContainer.Current;
Appname.Models.Bootstrapper.Register(container);
Appname.Data.Bootstrapper.Register(container);
}
}
}
这种方法 a) 在应用 IoC 时一般有效吗? b) 在 TinyIOC 上是否可行。到目前为止,我还没有让它像这样运行......
谢谢!