如果 查询一个独立的表那只还回 list ,list 中就是实体类的属性。但多表查询的时候 ,它不回的 list 就不能直接绑定到datagridview 中了。 list 中包含 其它实体类的 list 结果集。 这样怎么办啊
不建议直接使用 DataGridView 的直接绑定方法,不如自己手动绑定,这样会比较灵活..
你既然已经使用了NHibernate,就说明你的系统是以领域对象为核心的,既然以领域对象为核心,直接自己手写代码绑定,不用依赖list的直接绑定.
并且建议把这个DataGridView封一个组件,组件的作用就是显示和操作你的这些对象.传入List<Model>,进行组件初始化...
Mark^^关注
GridView 默认的情况下,只能对Item是非数组的List进行banding,而像你这种List中,每个Item都是数组,GridView应该是无能为力的。除非为GridView用模板列进行绑定,然后在里面写转换代码,可以参考模板列的一些资料。通常出现这种情况,应该属于统计范围的,我通常会在NHibernate Import 一个 DTO对象,然后GridView绑定这个DTO,这样就可以解决问题。Import DTO和Query的写法,可以参考这个
http://www.junasoftware.com/blog/nhibernate-iquery-using-a-dto-class-import-mapping.aspx