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 ラムダ式を使用して 2 つの列 (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 に答える