BDD - 动态更改MVC3中的Ninject绑定

时间:2011-07-10 21:08:48

标签: asp.net-mvc-3 ninject bdd

我是Ninject的新手,我按照自己的NinjectDependencyResolver类进行设置: http://www.shahnawazk.com/2010/12/dependency-injection-in-aspnet-mvc-3.html

我正在尝试设置BDD跨进程模拟ala Steve Sanderson的帖子: http://blog.stevensanderson.com/2010/03/09/deleporter-cross-process-code-injection-for-aspnet/

史蒂夫提出了类似的建议:

Deleporter.Run(() => {
    var mockDateProvider = new Mock<IDateProvider>();
    mockDateProvider.Setup(x => x.CurrentDate).Returns(dateToSimulate);
    NinjectControllerFactoryUtils.TemporarilyReplaceBinding(mockDateProvider.Object);
})

我如何实现TemporarilyReplaceBinding,以便我可以从我的Spec项目中动态更改MVC3项目中的绑定?

1 个答案:

答案 0 :(得分:3)

你有什么理由不能在GitHub上的WhatTimeIsIt项目中使用Steve的NinjectControllerFactoryUtils类(以及TidyupUtils类)的实现吗?