如果我通过注入请求对象并指定InRequestScope,我假设它返回相同的实例,直到请求上下文发生更改。我想知道的是,如果我修改该值,下一次注射是否包含修改?
示例(伪):
// In one class
var Obj = kernel.Get<IObjType>();
Obj.SomeProp = "Value"
// In another class in the same request context.
var Obj = kernel.Get<IObjType>();
Assert.True(Obj.SomeProp = value);
答案 0 :(得分:2)
简短:是的
长: 在同一请求中,Ninject将在请求范围内返回相同的对象实例。
这意味着当以下测试通过并且两个代码段的执行顺序正确时,您的测试将通过。
Obj.SomeProp = "Value"
Assert.True(Obj.SomeProp == value);