使用实体框架,如何选择列的数据长度加上其他列数据

时间:2013-02-27 07:41:58

标签: entity-framework select datalength

如果我有一个带有A列和B列的SQL表X,并且我想选择B的DATALENGTH以及A列,我该如何在单个表达式中执行此操作?例如:

var results = dc.X.Select(x => SqlFunctions.DataLength(x.B))

将返回包含等于B长度的单个列的结果。如果我想在同一结果集中包含A,那么这个陈述是什么样的?我试过这个,但显然不会编译:

var results = dc.X.Select(x => new { SqlFunctions.DataLength(x.B), x.A });

错误:

错误CS0746:无效的匿名类型成员声明符。必须使用成员分配,简单名称或成员访问声明匿名类型成员。

1 个答案:

答案 0 :(得分:1)

尝试显式指定匿名类型的成员名称:

var results = dc.X.Select(x => 
    new { Length = SqlFunctions.DataLength(x.B), A = x.A });