问题描述
我已经为nHibernate创建了一个通用函数,可以将List转换为Bean,但工作正常,但是我需要一种方法来以通用方式进行转换,而不用对我的查询调用AddScalar(如我的代码中所述)来假设我已经结束了50个模型pojo并想使用相同的通用方法来提取记录列表,我该如何实现。 这是我想用于任何模型并传递关联查询的通用方法。
public static IList<T> getRawQuery<T>(string query)//
{
IList<T> ls = new List<T>();
ISession session = MyHibernateUtil.openSession();
try
{
ls = session.CreatesqlQuery(@query)
.AddScalar("total",NHibernate.NHibernateUtil.Int32)//dont want to do this
.AddScalar("product_name",NHibernate.NHibernateUtil.String)//this will force me to have several methods doing same work
.AddScalar("barcode",NHibernate.NHibernateUtil.String)
.SetResultTransformer(Transformers.AliasToBean(typeof(T)))
.List<T>();
}
catch (Exception ex)
{
Console.WriteLine(ex);
}
finally
{
MyHibernateUtil.CloseSession(session);
}
return ls;
}
这是我的模特之一
public class SalesModel
{
public virtual String barcode { get; set; }
public virtual String product_name { get; set; }
public virtual int total { get; set; }
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)