Support updating an element in an array with ExecuteUpdate

Aberta
#3,622 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
38/100
Tipo de issue
Funcionalidade
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
csharp, postgresql
Domínio
database

Direção de pesquisa

Start by reading the linked EF Core issue #36836, then trace how ExecuteUpdate handles setters and how b.Tags[0] becomes a PostgreSQL-specific PgArrayIndexExpression. The goal is for ExecuteUpdateAsync to accept an array-element setter such as the example in this issue; verify it with a focused test for that case.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

We currently don't support the following:

context.Blogs.ExecuteUpdateAsync(s => s.SetProperty(b => b.Tags[0], "foo")

The reason is that b.Tags[0] translates to the PostgreSQL-specific PgArrayIndexExpression, and the ExecuteUpdate logic for handling setters isn't sufficiently open (see https://github.com/dotnet/efcore/issues/36836).

Linguagem predominante
C#
Estrelas
1.8k
Forks
268
Merge médio
2h 35min
PRs com merge (30d)
136

Preparar o ambiente

Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de npgsql/efcore.pg

Todas as issues de npgsql/efcore.pg

Issues semelhantes

Mais issues de C#

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.