2010-08-27 85 views
1

我正在做与实体框架的数据绑定。我有三个主 - 详细信息 - 子模型:客户订单,并OrdersDetails。 这将运行正常和数据绑定做的很好:在实体框架数据绑定中选择列

this.customerBindingSource.DataSource = context.Customers.ToList(); 

但肯定将返回所有列。我如何返回指定的列并仍然保留绑定?像这样的东西会失败:

context.Customers.Select(c => new { Name = c.Name, Address = c.Address }); 

谢谢。

回答

0

我希望,你必须返回所有列,因为EF必须建立从这些数据实体。如果您将anonymos类型与列的子集一起使用,则将投影到与您的实体模型无关的cutom类型。 UI控件应该负责显示哪些列。如果您不喜欢这种方法,您必须定义一组具有有限列的新实体,将这些实体映射到您的EF模型中,并将这些实体从查询返回给您的BindingSource。

+0

所以有2个选项: 1.从数据网格中删除不需要的列。 2.为实体创建新的视图。 谢谢拉迪斯拉夫:) – 2010-08-27 11:29:55