Nhibernate:从CreateSqlQuery中检索列名

cbp*_*cbp 5 nhibernate

使用CreateSqlQuery时,是否可以检索返回列名的有序列表?使用.List仅返回对象值的列表,而不是列别名.

Lac*_*che 10

如果您IResultTransformer通过查询应用查询SetResultTransformer(),将使用包含列名和值的两个列表调用它.

NHibernate.Transform命名空间中有几个现有的变换器,例如:

  • AliasToEntityMapResultTransformer创建从列名到每行值的映射.
  • AliasToBeanResultTransformer 每行创建一个指定类型的对象,并使用同名列中的值设置其属性.
  • ToListResultTransformer返回每行的值列表.

  • 对于那些需要一个例子的人,这里有一个对我有用的:`.CreateSQLQuery("...").SetResultTransformer(new NHibernate.Transform.AliasToEntityMapResultTransformer())` (2认同)