Поддерживает ли efcore запросы фильтрации пересечений?

#entity-framework-core

Вопрос:

Я хочу использовать запрос пересечения в efcore. Примерный код выглядит следующим образом, но я сообщаю об ошибке после использования intersect

модель

 public class data{
    public string[] tags {get;set;}
}
 

создание onmodel

 modelBuilder.Entity<data>()
  .Property(a => a.tags)
  .HasConversion(v => string.Join(',', (v)),
        v => string.IsNullOrWhiteSpace(v) ? null : v.Split(',', StringSplitOptions.RemoveEmptyEntries));
 

Я хотел сделать такой запрос, но произошла ошибка

 var tgs = new string[]{"test","other"};
var query = DbContext.Set<data>().Where(d => tgs.Intersect(d.tags).Count() > 0);

//has an error : the linq expression could not be translated.
 

Комментарии:

1. Ядро EF поддерживает Intersect , но не с локальными коллекциями. Также свойства с преобразованием нельзя использовать непосредственно в запросе. Поэтому, вероятно, теги должны быть сопоставлены с подробной таблицей.

2. Большое спасибо. Я понимаю это