DbExpressionBuilder.Select<TProjection> 方法
[本页针对的是实体框架版本 6。最新版本以“实体框架”NuGet 包的形式提供。有关实体框架的更多信息,请参见 msdn.com/data/ef。]
创建一个新的 DbProjectExpression,它对给定的输入集选择指定的表达式。
命名空间: System.Data.Entity.Core.Common.CommandTrees.ExpressionBuilder
程序集: EntityFramework(在 EntityFramework.dll 中)
语法
声明
<ExtensionAttribute> _
Public Shared Function Select(Of TProjection) ( _
source As DbExpression, _
projection As Func(Of DbExpression, TProjection) _
) As DbProjectExpression
用法
Dim source As DbExpression
Dim projection As Func(Of DbExpression, TProjection)
Dim returnValue As DbProjectExpression
returnValue = source.Select(projection)
public static DbProjectExpression Select<TProjection>(
this DbExpression source,
Func<DbExpression, TProjection> projection
)
[ExtensionAttribute]
public:
generic<typename TProjection>
static DbProjectExpression^ Select(
DbExpression^ source,
Func<DbExpression^, TProjection>^ projection
)
static member Select :
source:DbExpression *
projection:Func<DbExpression, 'TProjection> -> DbProjectExpression
JScript does not support generic types and methods.
类型参数
- TProjection
projection 的方法结果类型。
参数
- source
类型:System.Data.Entity.Core.Common.CommandTrees.DbExpression
一个指定输入集的表达式。
- projection
类型:System.Func<DbExpression, TProjection>
一个方法,该方法指定在给定输入集的成员时如何派生投影的表达式。 此方法必须生成与 Select 兼容且可以解析为 DbExpression 的类型的实例。 备注中说明了针对 TProjection 的兼容性要求。
返回值
类型:System.Data.Entity.Core.Common.CommandTrees.DbProjectExpression
表示选择运算的一个新的 DbProjectExpression。
使用说明
在 Visual Basic 和 C# 中,可以在 DbExpression 类型的任何对象上将此方法作为实例方法来调用。当使用实例方法语法调用此方法时,请省略第一个参数。有关详细信息,请参阅https://msdn.microsoft.com/zh-cn/library/bb384936(v=vs.113)或https://msdn.microsoft.com/zh-cn/library/bb383977(v=vs.113)。
异常
例外 | 条件 |
---|---|
ArgumentNullException | source 或 projection 为 null |
ArgumentNullException | projection 的结果为 null。 |
备注
若要与 Select 兼容,<typeparamref name="TProjection" /> 必须从 DbExpression 派生,或者必须是具有 DbExpression 派生的属性的匿名类型。 以下是 <typeparamref name="TProjection" /> 支持的类型的示例:<code>source.Select(x => x.Property("Name"))</code>(<typeparamref name="TProjection" /> 是 DbPropertyExpression)。 <code>source.Select(x => new { Name = x.Property("Name") })</code>(<typeparamref name="TProjection" /> 是具有 DbExpression 派生的属性的匿名类型)。
请参阅
参考
System.Data.Entity.Core.Common.CommandTrees.ExpressionBuilder 命名空间