Поддерживает ли поставщик Oracle Devart функцию разделения запросов, которая недавно добавлена в EF Core 5?

#devart #ef-core-5.0

Вопрос:

Один из моих проектов находится в EF core 3.1. Для этого используется поставщик Oracle Devart. Теперь мне нужно обновить этот проект до EF Core 5. В POC я обнаружил, что с помощью devart функция разделения запросов не работает, как показано в документе. Фрагмент кода приведен ниже.

  var order = context.PURORDMAINs
                        .Include(p => p.PURORDDETs)
                        .AsSplitQuery()
                        .ToList();
 

Запрос генерируется с использованием AsSplitQuery() is like FROM PURORDMAIN AS p ORDER BY p.ORDCODE ASC . Тогда это будет только запрос, сгенерированный в консоли. Но если не использовать AsSplitQuery() , то он генерирует запрос типа FROM PURORDMAIN AS p LEFT JOIN PURORDDET AS p0 ON p.ORDCODE == p0.ORDCODE ORDER BY p.ORDCODE ASC, p0.CODE ASC .

Я делаю что-то не так? Любая помощь будет ощутима. Заранее спасибо.

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

1. Из того, что вы сказали, я бы скорее сделал вывод, что это работает. Но тогда должен быть второй запрос с разделенными запросами.

2. Точно, но он не генерирует 2-й.

3. Тогда в de provider есть ошибка, и вы должны сообщить об этом там.

4. Мы не можем воспроизвести проблему в нашей среде, генерируются два запроса. Не могли бы вы, пожалуйста, прислать нам небольшой тестовый проект с соответствующим DDL-скриптом через devart.com/company/contactform.html ?