DbExpressionBuilder.SelectMany Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Sobrecargas
| Name | Description |
|---|---|
| SelectMany(DbExpression, Func<DbExpression,DbExpression>) |
Cria uma nova DbApplyExpression que avalia a expressão dada |
| SelectMany<TSelector>(DbExpression, Func<DbExpression,DbExpression>, Func<DbExpression,DbExpression,TSelector>) |
Cria uma nova DbApplyExpression que avalia a expressão dada |
SelectMany(DbExpression, Func<DbExpression,DbExpression>)
Cria uma nova DbApplyExpression que avalia a expressão dada apply uma vez para cada elemento de um conjunto de entrada, produzindo uma coleção de linhas com as correspondentes colunas de entrada e aplicação. Linhas para as quais apply avalia para um conjunto vazio não são incluídas. É então criado um DbProjectExpression A que seleciona a apply coluna de cada linha, produzindo a coleção global de apply resultados.
public:
[System::Runtime::CompilerServices::Extension]
static System::Data::Common::CommandTrees::DbProjectExpression ^ SelectMany(System::Data::Common::CommandTrees::DbExpression ^ source, Func<System::Data::Common::CommandTrees::DbExpression ^, System::Data::Common::CommandTrees::DbExpression ^> ^ apply);
public static System.Data.Common.CommandTrees.DbProjectExpression SelectMany(this System.Data.Common.CommandTrees.DbExpression source, Func<System.Data.Common.CommandTrees.DbExpression,System.Data.Common.CommandTrees.DbExpression> apply);
static member SelectMany : System.Data.Common.CommandTrees.DbExpression * Func<System.Data.Common.CommandTrees.DbExpression, System.Data.Common.CommandTrees.DbExpression> -> System.Data.Common.CommandTrees.DbProjectExpression
<Extension()>
Public Function SelectMany (source As DbExpression, apply As Func(Of DbExpression, DbExpression)) As DbProjectExpression
Parâmetros
- source
- DbExpression
A DbExpression que especifica o conjunto de entrada.
- apply
- Func<DbExpression,DbExpression>
Um método que representa a lógica a avaliar uma vez para cada membro do conjunto de entrada.
Devoluções
Uma nova DbProjectExpression que seleciona a coluna apply de uma nova DbApplyExpression com as associações de entrada e aplicação especificadas e uma DbExpressionKind de CrossApply.
Exceções
source não tem um tipo de resultado de coleção.
-ou-
A expressão produzida por apply não tem um tipo de coleção.
Aplica-se a
SelectMany<TSelector>(DbExpression, Func<DbExpression,DbExpression>, Func<DbExpression,DbExpression,TSelector>)
Cria uma nova DbApplyExpression que avalia a expressão dada apply uma vez para cada elemento de um conjunto de entrada, produzindo uma coleção de linhas com as correspondentes colunas de entrada e aplicação. Linhas para as quais apply avalia para um conjunto vazio não são incluídas. É então criado um DbProjectExpression A que seleciona o especificado selector em cada linha, produzindo a coleção global de resultados.
public:
generic <typename TSelector>
[System::Runtime::CompilerServices::Extension]
static System::Data::Common::CommandTrees::DbProjectExpression ^ SelectMany(System::Data::Common::CommandTrees::DbExpression ^ source, Func<System::Data::Common::CommandTrees::DbExpression ^, System::Data::Common::CommandTrees::DbExpression ^> ^ apply, Func<System::Data::Common::CommandTrees::DbExpression ^, System::Data::Common::CommandTrees::DbExpression ^, TSelector> ^ selector);
public static System.Data.Common.CommandTrees.DbProjectExpression SelectMany<TSelector>(this System.Data.Common.CommandTrees.DbExpression source, Func<System.Data.Common.CommandTrees.DbExpression,System.Data.Common.CommandTrees.DbExpression> apply, Func<System.Data.Common.CommandTrees.DbExpression,System.Data.Common.CommandTrees.DbExpression,TSelector> selector);
static member SelectMany : System.Data.Common.CommandTrees.DbExpression * Func<System.Data.Common.CommandTrees.DbExpression, System.Data.Common.CommandTrees.DbExpression> * Func<System.Data.Common.CommandTrees.DbExpression, System.Data.Common.CommandTrees.DbExpression, 'Selector> -> System.Data.Common.CommandTrees.DbProjectExpression
<Extension()>
Public Function SelectMany(Of TSelector) (source As DbExpression, apply As Func(Of DbExpression, DbExpression), selector As Func(Of DbExpression, DbExpression, TSelector)) As DbProjectExpression
Parâmetros de Tipo Genérico
- TSelector
O tipo de resultado do método de selector.
Parâmetros
- source
- DbExpression
A DbExpression que especifica o conjunto de entrada.
- apply
- Func<DbExpression,DbExpression>
Um método que representa a lógica a avaliar uma vez para cada membro do conjunto de entrada.
- selector
- Func<DbExpression,DbExpression,TSelector>
Um método que especifica como um elemento do conjunto de resultados deve ser derivado dado um elemento dos conjuntos de entrada e aplicação. Este método deve produzir uma instância de um tipo compatível com o SelectMany e que pode ser resolvida DbExpressionnum . Os requisitos de compatibilidade para TSelector são descritos em observações.
Devoluções
Uma nova DbProjectExpression que seleciona o resultado do seletor dado a partir de uma nova DbApplyExpression com as associações de entrada e aplicação especificadas e um DbExpressionKind de CrossApply.
Exceções
source, apply ou selector é nulo.
-ou-
A expressão produzida por apply é nula.
-ou-
O resultado de selector é nulo na conversão para DbExpression.
source não tem um tipo de resultado de coleção.
-ou-
A expressão produzida por apply não tem um tipo de coleção. não tem um tipo de coleção.
Observações
Para ser compatível com o SelectMany, TSelector deve ser derivado de DbExpression, ou deve ser um tipo anónimo com propriedades derivadas do DbExpression. Seguem-se exemplos de tipos suportados para TSelector:
source.SelectMany(x => x.Property("RelatedCollection"), (source, apply) => apply.Property("Name"))
(TSelector é DbPropertyExpression).
source.SelectMany(x => x.Property("RelatedCollection"), (source, apply) => new { SourceName = source.Property("Name"), RelatedName = apply.Property("Name") })
(TSelector é um tipo anónimo com propriedades derivadas de DbExpression).