DbExpressionBuilder.SelectMany Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Sobrecargas
| Nome | Description |
|---|---|
| SelectMany(DbExpression, Func<DbExpression,DbExpression>) |
Cria uma nova DbApplyExpression que avalia a expressão fornecida |
| SelectMany<TSelector>(DbExpression, Func<DbExpression,DbExpression>, Func<DbExpression,DbExpression,TSelector>) |
Cria uma nova DbApplyExpression que avalia a expressão fornecida |
SelectMany(DbExpression, Func<DbExpression,DbExpression>)
Cria uma nova DbApplyExpression que avalia a expressão fornecida apply uma vez para cada elemento de um determinado conjunto de entrada, produzindo uma coleção de linhas com a entrada correspondente e aplica colunas. Linhas para as quais apply as avaliações são avaliadas como um conjunto vazio não estão incluídas. Em DbProjectExpression seguida, é criado um que seleciona a apply coluna de cada linha, produzindo a coleção geral 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
Um DbExpression que especifica o conjunto de entrada.
- apply
- Func<DbExpression,DbExpression>
Um método que representa a lógica a ser avaliada uma vez para cada membro do conjunto de entrada.
Retornos
Um novo DbProjectExpression que seleciona a coluna apply de um novo DbApplyExpression com a entrada especificada e aplica associações e um DbExpressionKind 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 fornecida apply uma vez para cada elemento de um determinado conjunto de entrada, produzindo uma coleção de linhas com a entrada correspondente e aplica colunas. Linhas para as quais apply as avaliações são avaliadas como um conjunto vazio não estão incluídas. Em DbProjectExpression seguida, é criado um que seleciona o especificado selector em cada linha, produzindo a coleção geral 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
- TSelector
O tipo de resultado do método de selector.
Parâmetros
- source
- DbExpression
Um DbExpression que especifica o conjunto de entrada.
- apply
- Func<DbExpression,DbExpression>
Um método que representa a lógica a ser avaliada 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. Esse método deve produzir uma instância de um tipo compatível com SelectMany e pode ser resolvido em um DbExpression. Os requisitos de compatibilidade para TSelector os quais são descritos em comentários.
Retornos
Um novo DbProjectExpression que seleciona o resultado do seletor determinado de um novo DbApplyExpression com as associações de entrada e aplicação especificadas e um DbExpressionKind crossApply.
Exceções
sourceou applyselector é nulo.
-ou-
A expressão produzida por apply é nula.
-ou-
O resultado é 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.
Comentários
Para ser compatível com SelectMany, TSelector deve ser derivado de DbExpression, ou deve ser um tipo anônimo com propriedades derivadas de DbExpression. Veja a seguir exemplos de tipos com suporte 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).