【问题标题】:How to bind data from mutiple tables to datagridview using Entity Framework and use CRUD operations?如何使用 Entity Framework 将多个表中的数据绑定到 datagridview 并使用 CRUD 操作?
【发布时间】:2014-07-19 06:29:30
【问题描述】:

有人可以举例说明如何将结果绑定到从实体框架中的多个表(来自连接查询)中获取的数据网格视图。实际上我可以将数据绑定到 datagridview 但是当我调用时

context.SaveChanges(); 数据库中没有任何更新。如何使用 Update、Insert、Delete 函数正确地将数据绑定到 datagridview。

这是我尝试过的。

public class DataBindingProjection
{
    public string dono { get; set; }
    public int apmntid { get; set; }
    public string servicedesc { get; set; }
    public string cusid { get; set; }
    public string empid { get; set; 
    public bool isdelivered { get; set; }
}


context = new HHCSEntities();

var query = from d in context.DeliveryOrders
            join a in context.Appointments on d.ApmntId equals a.ApmntId
            join s in context.ServiceCategories on d.ServiceId equals s.ServiceId
            join e in context.Employees on d.EmpId equals e.EmpId
            select new DataBindingProjection
            {
                dono = d.DONo,
                apmntid = a.ApmntId,
                servicedesc = s.ServiceDesc,
                cusid = a.CusId,
                empid = d.EmpId,
                shortname = e.ShrtName,
                isdelivered = d.IsDelivered
            };

dataGridView1.DataSource = query.ToList();
dataGridView1.Columns[1].DataPropertyName = "dono";
dataGridView1.Columns[2].DataPropertyName = "apmntid";
dataGridView1.Columns[3].DataPropertyName = "servicedesc";
dataGridView1.Columns[4].DataPropertyName = "apmntid";
dataGridView1.Columns[5].DataPropertyName = "empid";
dataGridView1.Columns[9].DataPropertyName = "isdelivered";

提前致谢。

【问题讨论】:

    标签: c# linq entity-framework datagridview


    【解决方案1】:

    在给出查询结果后,你应该这样写:

    ...
    
    BindingSource bi = new BindingSource();
    bi.DataSource = query.ToList();
    dataGridView1.DataSource = bi;
    dataGridView1.Refresh();
    
    ...
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-18
      • 1970-01-01
      • 2023-03-14
      • 2011-03-22
      • 2011-08-17
      相关资源
      最近更新 更多