您的位置:首页 > 其它

通用解决方案:解决NHibernate SELECT 多表查询结果List绑定控件显示问题。

2008-11-22 15:00 656 查看
(1)NHibernate SELECT 多表查询结果List是一个二维数组,无法直接绑定界面Grid控件,不赞成对每一个查询单独增加一个类解决显示问题。

(2)建立一个类ConmmonNH,有20个string的属性,属性名(Col0-Col19)。(如果觉得所有程序界面显示字段超过20,可以增加属性)

(3)实现方法ConvertToConmmonNH,代码如下:

public IList<ConmmonNH> ConvertToConmmonNH(IList list)

{

IList<ConmmonNH> arr = new List<ConmmonNH>();

foreach (object[] obj in list)

{

ConmmonNH con = new ConmmonNH();

for (int i = 0; i < obj.Length; i++)

{

con.GetType().GetProperty("Col" + i.ToString()).SetValue(con, obj[i].ToString(), null);

}

arr.Add(con);

}

return arr;

}

(4)转换过的结果可以直接绑定界面Grid控件,需要说明的是因为实际查询的字段数目不等,多余的字段值为空,绑定Grid控件的时候列不要自动生成,手工指定即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐