首页 新闻 会员 周边

Ilist<T> 的绑定问题

0
悬赏园豆:20 [已解决问题] 解决于 2008-03-13 22:17
<br>话接昨日问题续<br> select * from<br> <br> company left join company_name_hist<br> <br> on company.Company_ID = company_name_hist.Company_ID <br> <br> where company_name_hist.Co_Name like '111'<br> or <br> company.Co_Name like '111'<br> ===<br> company 和 company_name_hist是one to many的<br> ==<br>用criteria 是<br> session.CreateCriteria(typeof(company), "cp")<br>.CreateCriteria("company_name_hist", "cph", JoinType.LeftOuterJoin)<br>.Add(Expression.Expression.Or(Expression.Like("cp.Co_Name", "111"), Expression.Like("cph.Co_Name", "111")))<br>.List();<br>=================<br>ConvertToGenericList(criteria.List());会得到ILIST&lt;&gt;<br>类型,但是gridview绑定的时候有的列是company上的 有的是<br>company_name_hist是上的,我直接写company上的字段没问题<br>但是写上company_name_hist上的字段companyNo就出现<br><br>在选定的数据源上未找到名为“companyNo”的字段或属性的错误<br>---<br>上述criteria写法我已经按照配置文件的写好了,cirteria调试通过<br>已经one to many 映射好了<br>&nbsp;&nbsp;&nbsp; &lt;bag name="ListCompanyNameHist" generic="true" inverse="true" cascade="none" lazy="true"&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;key column="Company_ID"/&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;one-to-many class="CompanyNameHist,App_Code" /&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/bag&gt;<br><br><br>
chinese的主页 chinese | 初学一级 | 园豆:140
提问于:2008-03-11 22:58
< >
分享
最佳答案
0
嘖,注意,返回的是IList<company>類型,每一個company都會有“一組company_name_hist”,在這種情況,怎么可以是有些字段綁定到company_name_hist的字段上去呢?這是不合邏輯的,假定你想顯示每個公司的所有“曾用名”的話,那正確的思路應該是針對company的ListCompanyNameHist這個集合進行處理,而不是針對CompanyNameHist的字段處理。 Gridview控件幾乎沒用過,所以沒辦法提出太具體的建議,希望你能看得懂咯。
Klesh Wong | 小虾三级 |园豆:780 | 2008-03-12 11:35
其他回答(1)
0
要加表前缀吧~~
沙加 | 园豆:3680 (老鸟四级) | 2008-03-11 23:17
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册