我有devexpress gridview,这个girdview的数据来自两个表。下面是这两个表的结构。在table1中,您可以说ProductID列是唯一的,在table2中可以重复ProductID。我想在gridview中显示每个productID的每一行。
我不想在table2上使用PIVOT,因为每次为产品插入新值时我都必须更改LINQ enitity或数据库对象。
表1
1 ------------------------ X --------------------- ----ÿ
表2
1 ---------------- ColumnC --------ž
1 ---------------- ColumnD --------甲
所以在网格中我想要
我是否需要在asp.net中使用数据表(如果是这样)并将此数据表作为数据源传递给网格?或者我可以使用列表(如果是这样的话?)
我也希望将网格中的任何datapresent导出为excel。
答案 0 :(得分:1)
如果我理解正确,您想使用Master-Detail视图:
http://demos.devexpress.com/ASPxGridViewDemos/MasterDetail/MasterDetail.aspx
答案 1 :(得分:0)
选中link导出GridViews
。
为了完成你的任务,我认为你可以这样做:
foreach (Table1Class table1Class in Table1ClassList) // Table1ClassList contains all the records from Table1
{
foreach (Table2Class table2Class in Table2ClassList.Where(e => e.ProductID.Equals(table1Class.ProductId)))
{
// Retrieving Column : your FieldNames should be correctly set
GridColumn columnFromGrid = FinalGrid.Columns.Where(col => col.FieldName.Equals(table2Class.Column)).First();
// TODO : Populating Column
}
}
我认为这应该可以解决问题!