6

我有一个包含几列的表(clm1-clm10)。数据网格填充了所有列,如下所示:

MyTableDomainContext context = new MyTableDomainContext();
dataGrid1.ItemsSource = context.DBTables;
context.Load(context.GetDBTablesQuery());

GetDBTablesQuery()定义domainservices.cs如下:

public IQueryable<DBTable> GetDBTables()
{
    return this.ObjectContext.DBTables;
}

如何使用 select lambda 表达式只显示两列(例如 clm1 和 clm5)?

4

1 回答 1

15

这是你想要的?

GetDBTables().Select(o => new { o.clm1, o.clm5 });

它将导致匿名类型。如果你想让它产生你定义的某种类型,它可能是这样的:

GetDBTables().Select(o => new MyViewModel { clm1 = o.clm1, clm5 = o.clm5 });
于 2013-10-01T16:14:33.730 回答