实体框架加入Stuck

时间:2013-02-27 07:32:01

标签: entity-framework join

我想通过使用实体框架加入northwind数据库上的Customer和Orders表,但我在'DataBind'上收到错误。

    public void CustomerJoin()
    {
        using (var ctx = new northwindContext())
        {
            var found = from mycust in ctx.Customers
                        join cust in ctx.Orders on mycust.CustomerID equals cust.CustomerID
                        select new { Customer = mycust, Order = cust }; ;
            grdEmployees.DataSource = found.ToList();
            grdEmployees.DataBind();
        }
    }

grdEmployees.DataBind();的错误消息:具有id“grdEmployees”的GridView的数据源没有用于生成列的任何属性或属性。确保您的数据源包含内容

1 个答案:

答案 0 :(得分:1)

绑定时你可能做错了

grdEmployees.DataSource = found.ToList(); 

您应该创建一个具有您要显示的所有列的属性的类

并迭代查找类似这样的内容

list<newClassToShow> itemsToBind = new <newClassToShow>();
foreach(var item in found.ToList())
{
   newClassToShow it = new newClassToShow()
it.property1 = item.column1;//do this for all item
itemToBind.add(it);
}

现在将列表绑定到gridEmployee