我的nancy Bootstrapper是这样的:
public class Bootstrapper : NinjectNancyBootstrapper
{
protected override void ApplicationStartup(IKernel container, IPipelines pipelines)
{
Csrf.Enable(pipelines);
}
protected override void ConfigureRequestContainer(IKernel container, NancyContext context)
{
// Perform registrations that should have a request lifetime
container.Bind<IRepository<User>>().To<Repository<User>>().InSingletonScope();
}
}
我有一个南希模块:
public class UsersModule : NancyModule
{
private IRepository<User> users;
public UsersModule(IRepository<User> usersRepo)
{
this.users = usersRepo;
}
}
当我启动应用程序时,出现错误:
激活ISession
时出错没有匹配的绑定可用,并且该类型不可自我绑定。 激活路径:
3)将依赖关系ISession注入到Repository {User}
类型的构造函数的参数会话中2)将依赖关系IRepository {User}注入到UsersModule类型的构造函数的参数usersRepo中
1)请求INancyModule
建议:
1)确保您已为ISession定义了绑定。
2)如果在模块中定义了绑定,请确保已将模块加载到内核中。
3)确保您没有意外创建多个内核。
4)如果使用构造函数参数,请确保参数名称与构造函数参数名称匹配。
5)如果使用自动模块加载,请确保搜索路径和过滤器正确无误。
有任何线索吗?我迷路了...
答案 0 :(得分:0)
问题是我没有注入NHibernate的ISession ...... X - (