Asp.net 将服务注入到NHibernate的实现中';使用Autofac的IUserType

Asp.net 将服务注入到NHibernate的实现中';使用Autofac的IUserType,asp.net,nhibernate,autofac,Asp.net,Nhibernate,Autofac,我正在使用NHibernate将以下类映射到ASP.NET MVC应用程序中的Oracle数据库: public class User { // Needs to be encrypted/decrypted when persisting public virtual string Question { get; set; } } 下面是我发现的几个示例,我想使用NHibernate的IUserType实现在数据持久化到数据库或从数据库检索数据时转换数据 由于我已经编写了一个

我正在使用NHibernate将以下类映射到ASP.NET MVC应用程序中的Oracle数据库:

public class User
{
    // Needs to be encrypted/decrypted when persisting
    public virtual string Question { get; set; }
}
下面是我发现的几个示例,我想使用NHibernate的IUserType实现在数据持久化到数据库或从数据库检索数据时转换数据


由于我已经编写了一个
EncryptionService
类来处理应用程序其他部分中的数据加密,因此我希望将其注入到我的用户类型中。有没有一种方法可以使用Autofac在IUserType上执行构造函数注入?

NHibernate负责创建IUserType实现的实例。如果您希望这是可配置的,您可以从AutoFac容器查询服务(显然这不是依赖注入,更多的是服务定位器)。或者您可以实现IConfigurable,它允许您接受参数字典。其中一个参数可以是类名。

使用Autofac的字节码提供程序,您可以在Autofac contrib中找到它


你能把你的问题统一一点吗?您正在谈论的是
HashService
EncodingService
EncryptionService
。这些应该是一样的?我又试了一次。这更好吗?这就是我在阅读的所有例子中看到的。我希望他们只是过时了。。。