找不到字段:' NHibernate.NHibernateUtil.String'

时间:2015-08-26 06:41:03

标签: c# nhibernate fluent-nhibernate nhibernate-mapping saga

我正在尝试使用流畅的包NHibernate配置id="NHibernate" version="4.0.0.4000" targetFramework="net451"id="FluentNHibernate" version="2.0.1.0" targetFramework="net451"。以下代码:

var sessionFactory = Fluently.Configure()
.Database(SQLiteConfiguration.Standard.InMemory)
.Mappings(m =>
{
    m.FluentMappings
    .AddFromAssemblyOf<ExampleSagaMap>();
)
.ExposeConfiguration(cfg =>
{
    chemaExport = new SchemaExport(cfg);
})
.BuildSessionFactory();

地图代码:

public ExampleSagaMap()
{
    Not.LazyLoad();

    Id(x => x.CorrelationId).GeneratedBy.Assigned();

    Map(x => x.CurrentState)
        .Access.ReadOnlyPropertyThroughCamelCaseField(Prefix.Underscore)
        .CustomType<StateMachineUserType>();

    Map(x => x.MessagesReceived);
    Map(x => x.MessagesSent);
}

错误:

  

创建时使用了无效或不完整的配置   SessionFactory的。检查PotentialReasons集合和InnerException   了解更多细节。

     

内部错误:{&#34;未找到字段:&#39; NHibernate.NHibernateUtil.String&#39;。&#34;}

有人可以帮忙。 感谢

1 个答案:

答案 0 :(得分:0)

就我而言,我收到此错误是因为我使用引用IUserType的{​​{1}}实现了自定义枚举类型。

解决方案是改为使用新的NHibernateUtil.String.SqlType

SqlTypeFactory