Translate Array[][].Contains(x.<array property>)
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 28/100
Línea de trabajo
This is a query-translation gap in the Npgsql EF Core provider for nested int[] compared with SequenceEqual, Contains, or Join. Reproduce with the Part entity and the three snippets in the issue against Npgsql.EntityFrameworkCore.PostgreSQL 9.0.4; the errors mention unnest(... ) WITH ORDINALITY lacking a type mapping. Start from how array and nested-array type mappings are applied in the SQL tree, then add coverage for Contains/SequenceEqual/Join of array-of-array parameters. Done when those LINQ shapes translate and execute without the mapping exceptions.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
I encountered another issue regarding arrays.
I have a class with an array property:
public class Part {
public int Id { get; set; }
public int[] TaxonomyPath { get; set; }
}
Now I want to query for all Parts where TaxonomyPath is in [[1, 2], [4,7], [3,9]]:
int[][] expected = [[1, 2], [4,7], [3,9]];
await dbContext.Parts
.Where(x => expected.Any(e => x.TaxonomyPath.SequenceEqual(e)))
.ToArrayAsync();
This throws:
Expression 'unnest(@__existing_0) WITH ORDINALITY AS e(value)' in the SQL tree does not have a type mapping assigned.
When I change SequenceEqual to == it throws:
Couldn't find array type mapping when applying item/array mappings
Same when using Where(x => expected.Contains(x.TaxonomyPath).
Also when joining (which is the actual goal):
int[][] expected = [[1, 2], [4,7], [3,9]];
await dbContext.Parts
.Join(expected,
x => x.TaxonomyPath,
x => x,
(p, _) => p)
.ToArrayAsync();
It throws:
Expression 'unnest(@__p_0) WITH ORDINALITY AS p(value)' in the SQL tree does not have a type mapping assigned.
I am using Npgsql.EntityFrameworkCore.PostgreSQL 9.0.4.
- Lenguaje dominante
- C#
- Estrellas
- 1.8k
- Forks
- 268
- Merge medio
- 2 h 35 min
- PR fusionados (30 d)
- 136
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de npgsql/efcore.pg
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
NTS: the M ordinate is dropped from geometry SQL literals and from geometries stored in JSONPosiblemente ocupada @Ahmed7991 la tomó hace 5 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
npgsql/efcore.pg#4093 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
`TimeSpan`/`Duration` component members: negative values are floored, and intervals computed in SQL are read field by fieldPosiblemente ocupada @jeremy-morren la tomó hace 11 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
Los mantenedores suelen responder en 1 día
-
Numeric storage parameters are formatted with the current culture, so migrations emit 0,01 instead of 0.01Posiblemente ocupada @Sorbitol la tomó hace 12 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 30/100
Los mantenedores suelen responder en 1 día
-
`Contains` on a JSON primitive collection compares JSON text, so `DateTime` and `TimeOnly` items never matchPosiblemente ocupada @Mr444-dev la tomó hace 7 días. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
npgsql/efcore.pg#4099 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de npgsql/efcore.pg
Issues similares
-
Issue-Bug Needs-Triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
JiaFeiMiao-K-Cat/DiscImageStudio#281 ·
Los mantenedores suelen responder en 1 día
-
area/access-management Frontend onboarding candidate :handshake:
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
Altinn/altinn-auth#4941 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
aws/aws-sdk-net#4586 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Kryptos-FR/MarkView.Avalonia#269 · 1 reacción ·
Los mantenedores suelen responder en 1 día