其他分享
首页 > 其他分享> > 可以使用带有静态属性的Ninject吗?

可以使用带有静态属性的Ninject吗?

作者:互联网

我有一个静态的SessionFactory类,用于初始化NHibernate会话工厂.因为此过程很昂贵(〜5秒),所以我希望它是静态的,因此在运行时开始时只执行一次.

该配置可以采用如下数据库参数参数:

public static IPersistenceConfigurer DbConfig { get; set; }

public static void Initialize()
{
    var cfg = Fluently.Configure()
                      .Database(DbConfig)
                      .Mappings(some mappings)
                      .BuildConfiguration();
}

是否可以使用Ninject以正确的常数注入DbConfig?

解决方法:

而不是使其静态,而是注册ISessionFactory实例(ToConstant()),然后将ISession注册到请求范围(InRequestScope)

This thread解释得很清楚.

标签:properties,static,ninject,nhibernate,c
来源: https://codeday.me/bug/20191210/2101267.html