nHibernate HQL – 未映射实体

对于大多数查询,我有我的nHibernate设置并且正确使用QueryOver,但是,每当我尝试执行HQL CreateQuery时,我都会得到实例未映射的exception。 我可以使用QueryOver确认相同的实体正常工作。

注意:我使用的是流畅的nHibernate

任何想法会导致什么?

如果在映射中禁用了自动导入( ),则必须在查询中的任何位置使用完全限定的类名,不合格的类名将不起作用。

否则,启用自动导入。

 Conventions.Setup(x => { x.Add(FluentNHibernate.Conventions.Helpers.AutoImport.Always()); // AutoImport.Never }); // End FluentMappings.Conventions.Setup 

像这样:

 /* var model = AutoMap.AssemblyOf() .Where(t => t.Namespace.StartsWith("MyDb.Tables")) .Conventions.AddFromAssemblyOf(); */ protected static AutoPersistenceModel CreateMappings() { //return new AutoPersistenceModel().AddMappingsFromAssemblyOf(); return new AutoPersistenceModel().AddMappingsFromAssemblyOf() .Where(t => t.Namespace == "MyDb.Tables"); } private static ISessionFactory CreateMsSqlSessionFactory() { //AutoPersistenceModel model = CreateAutoMappings(); AutoPersistenceModel model = CreateMappings(); return Fluently.Configure() .Database(MsSqlConfiguration.MsSql2005 .ConnectionString(c => c //.Server("MYCOMPUTER\\SQLEXPRESS") .Server("localhost") //.Database("testdb") .Database("nhDMS") .Username("TableCreatorWebServices") .Password(DB.Tools.Cryptography.AES.DeCrypt("AES_ENCRYPTED_PW")))) //.Mappings(m => m.FluentMappings.AddFromAssemblyOf()) .Mappings(m => { m.AutoMappings.Add(model); m.FluentMappings.Conventions.Setup(x => { //x.AddFromAssemblyOf(); x.Add(FluentNHibernate.Conventions.Helpers.AutoImport.Always()); // AutoImport.Never }); // End FluentMappings.Conventions.Setup } ) // End Mappings .ExposeConfiguration(BuildSchema) // BuildSchema function call... .BuildSessionFactory(); } // End Function CreateMsSqlSessionFactory