【发布时间】:2017-08-11 09:22:58
【问题描述】:
在服务项目中创建了一个 NinjectBootstrapper 类(负责获取产品)。 这是我的代码
public static class NinjectBootstrapper
{
private static readonly object _thislock = new object();
//flag to prevent bootstrap for executing multiple times
private static bool _done;
public static void Bootstrap()
{
lock(_thislock)
{
if(_done)
{
return;
}
_done = true;
// services
NinjectContainer.Kernel.Bind<IProductService>().To<ProductService>();
// repositories
NinjectContainer.Kernel.Bind<IProductRepository>().To<ProductRepository>();
}
}
}
现在,虽然这可行,但我真的很想知道是否有更好的方法来重构我的代码。例如,我已经阅读了很多关于使用单例而不是静态类的内容。 我真的想在这里打下一个很好的基础,让未来的开发人员能够轻松灵活地扩展功能。我可以考虑哪些好的建议和技巧?
【问题讨论】:
标签: c#-4.0 design-patterns static singleton ninject