使用带有NHibernate命名查询的未映射类

lom*_*axx 3 c# nhibernate named-query

我正在使用NHibernate的自定义命名查询,我想返回Person对象的集合.Person对象没有映射到NHibernate映射,这意味着我得到以下异常:

System.Collections.Generic.KeyNotFoundException:给定的键不在字典中.

在创建Session时会抛出它,因为它在调用NHibernate.Cfg.Mappings.GetClass(String className)时找不到类名.这一切都是可以理解的,但我想知道是否有任何方法告诉NHibernate使用该类,即使我没有它的映射?

Mic*_*ski 9

你为什么不用:

query.SetResultTransformer(Transformers.AliasToBean(typeof(Person)));

它将使用列别名作为属性名称将查询中每列的数据插入Person对象属性.