如您所见,我已经绑定了我的 IDbClassesDataContext。我想要做的是链接下一个,这样当 IMovieRepository 被解析时,它将传递重新解析的 IDbClassesDataContext。
kernel.Bind(Of IDbClassesDataContext).To(Of DbClassesDataContext) _
.WithConstructorArgument("connection", connectionString)
kernel.Bind(Of IMovieRepository).To(Of MovieRepository)() _
.WithConstructorArgument("dataContext", IDbClassesDataContext)
我也试过这个:
kernel.Bind(Of IDbClassesDataContext).To(Of DbClassesDataContext) _
.WithConstructorArgument("connection", connectionString)
kernel.Bind(Of IMovieRepository).To(Of MovieRepository)() _
.WithConstructorArgument("dataContext", _
Function(context) context.Kernel.Get(Of DbClassesDataContext)())
我究竟做错了什么?
编辑:
作为记录,如果我传入一个初始化的 DbClassesDataContext,它工作正常。
kernel.Bind(Of IMovieRepository).To(Of MovieRepository)() _
.WithConstructorArgument("dataContext", initializedObj)