在单个GridView列中显示多个表值

时间:2009-10-14 11:45:02

标签: winforms linq-to-sql gridview

我有一个使用BindingSource和Linq到SQL类绑定到表的GridView。表结构如下:

MainTable
----------
ID Name FormReserveId
123 asd 15

FormReserves
-----------------
ID FormId Number
15 33     some number

Forms
------
ID FormName
33 form name

MainTable.FormReserveId FormReserves.ID

的外键

FormReserves.FormId Forms.ID

的外键

在网格中,如何显示“表单名称,某些数字”,而不是显示FormReserveId(?15)?

1 个答案:

答案 0 :(得分:1)

您需要将这些额外的表“加入”到您要绑定的结果集中,或者使用L2S生成的类的导航属性并对返回的数据进行整形。

这样的事情:

var results = (from r in <yourSource> select new 
{
    Name = r.Name,
    FormName = r.FormReserves.Forms.FormName,
    Number = r.FormReserves.Number
});