1

我将 Winforms Grid 绑定到实体。(原因我这里就不赘述了,它必须绑定实体,而不是查询结果)代码如下:

grid.DataSource = myEntities.entityName.Where("it.field = " & field)

它有效,但显然不是强类型。有没有办法使用强类型符号定义实体的 Where 子句?

4

1 回答 1

4

您是否尝试过使用 lambda 表达式?

grid.DataSource = myEntities.Customers.Where(c => c.Name == "Bob");

或在 VB 中:

grid.DataSource = myEntities.Customers.Where(Function(c) c.Name = "Bob")

如果它必须是动态的,那么您可能需要考虑构建自定义表达式树。有关表达式树基础知识的教程,请参阅此博客http://blogs.msdn.com/charlie/archive/2008/01/31/expression-tree-basics.aspx

这个博客展示了一个很好的排序示例。 http://weblogs.asp.net/davidfowler/archive/2008/12/11/dynamic-sorting-with-linq.aspx

于 2009-04-24T02:59:44.890 回答