我已成功使用NHibernate,但现在我正在尝试转向Fluent NHibernate。我创建了所有映射文件并设置了会话管理器以使用Fluent配置。然后我运行我的应用程序,它运行成功,但没有返回任何数据 没有错误或任何迹象表明存在问题,但没有任何运行。
当使用NHibernate时,如果我没有将我的hbm xml文件设置为嵌入式资源,则会发生同样的事情。这让我想知道我要将Map类设置为什么。现在,它们只是设置为Compile,它们被编译成dll,我可以通过反汇编看到它。
有没有人对这里可能发生的事情有任何想法?
由于
private ISessionFactory GetSessionFactory()
{
return Fluently.Configure()
.Database(
IfxOdbcConfiguration
.Informix1000
.ConnectionString("Provider=Ifxoledbc.2;Password=mypass;Persist Security Info=True;User ID=myuser;Data Source=mysource")
.Dialect<InformixDialect1000>()
.ProxyFactoryFactory<ProxyFactoryFactory>()
.Driver<OleDbDriver>()
.ShowSql()
)
.Mappings(
x => x.FluentMappings.AddFromAssembly(System.Reflection.Assembly.GetExecutingAssembly())
//.ExportTo("C:\\mappings")
)
.BuildSessionFactory();
}
答案 0 :(得分:1)
执行程序集是否包含流畅的映射类?我会尝试:
.Mappings(x => x.FluentMappings.AddFromAssemblyOf<MappedType>())
其中MappedType
是一个具有流畅映射的类。
答案 1 :(得分:0)
他们应该设置为编译,这没关系。这里没什么特别需要的。问题很可能在于您的流畅配置而不是映射。