Home > front end >  EFCore array intersection
EFCore array intersection

Time:12-26

I use postgre and have filed int table with type text[] and name codes, and have filterCodes type of string[]. When I query data from table I need to check that codes contains at least one element from filterCodes, I try use Intersection and Any but it don't works. How I can do tit without writing custom functions.

patientQuery.Where(p => p.Codes.Intersect(filterCodes).Any());

CodePudding user response:

According to documentation Array Type Mapping (look at translation of array1 && array2)

It should be:

patientQuery = patientQuery
  .Where(p => p.Codes.Any(c => filterCodes.Contains(c)));
  • Related