我试图将enum字段映射到dto属性。我使用PositionalToBeanResultTransformer,这样的事情:NHIbernate SQLQuery和枚举
PositionalToBeanResultTransformer trans = new PositionalToBeanResultTransformer(typeof(DTOClass), new string[] { "Id", "EnumProperty" });
var data = Sesion.CreateSQLQuery("SELECT Id, EnumField FROM Table")
.AddScalar("EnumField", NHibernateUtil.Custom(typeof(Enumerador)))
.SetResultTransformer(trans)
.List<DTOClass>();
public class DTOClass
{
public int Id { get; set; }
public Enumerador EnumProperty { get; set; }
}
的DTOClass没有映射,所以我不能用AddEntity()和代码AddScalar()抛出,我必须实现NHibernate.UserTypes.IUserType错误。 如何将数据库的字符串字段转换为SQLQuery中的枚举?
在此先感谢您的帮助。
您是使用hbm还是fluent进行映射。 –
DTOClass未映射。 – Ariel