从多个表到Datagridview C#winforms的数据

时间:2014-03-09 23:14:17

标签: sql winforms entity-framework datagridview entity-framework-4

我正在为燃油泵开发自动化手动系统。到目前为止,我已经完成了我的任务,但现在我被困在与从多个相关表中检索数据相关的内容到一个数据网格视图中。我已经'谷歌'我的问题,但未能找到正确的方法继续前进。这是我的场景说明:

  • 我的表名为'部门',其中有'车辆'表; (1 - *)关系。
  • 然后'车辆'表格有'月'表,以保存每月结算明细; (1 - *)关系。
  • 'Months'表有两个表'Fuel_Bill''Lubi_Bill'以保存账单的最高级别信息。与'月'表有 1-1 的关系。

我使用SQL LocalDB上的实体框架设计器第一个模型来构建它。

所以,现在我坚持要表现出来: - 部门的每月摘要视图,其中包含一个数据网格视图中所选“月份”的“车辆”和“燃料_bill”详细信息。

这是一个很长的问题,但要明确我提供这些细节,请帮助我,如果我不能做到这一点,我的整个项目都会失败。

任何帮助将不胜感激。 提前谢谢。

我正在添加指向数据库结构图片的链接。

实体框架模型:

Model

我正在努力实现的目标:

View

1 个答案:

答案 0 :(得分:1)

我会从context.Months开始为您的网格收集所需的数据:

var viewModels = context.Months
    .Where(m => m.Month_Name == selectedMonthName &&
        m.Vehical.Dept_Id == selectedDepartmentId)
    .Select(m => new
    {
        Vehc_Number = m.Vehical.Vehc_Number,
        FB_Id = m.Fule_Bill.FB_Id,
        LB_GTAmount = m.Fule_Bill.LB_GTAmount,
        LB_GTQuantity = m.Fule_Bill.LB_GTQuantity
    })
    .ToList();

viewModels将是一个匿名对象列表,其中包含您希望在网格中显示的四个属性。应该可以将此列表绑定到网格视图。