Кадр сущности номер строки ядра в необработанном запросе всегда 0 - PullRequest
0 голосов
/ 25 января 2020

Мы делаем несколько сложных запросов (с Dynami c, где, orderby, ...), поэтому мы в основном вынуждены делать запрос в сыром виде. Другой причиной может быть производительность, которая теряется с LINQ (или нет потери производительности).

Итак, мы создаем row_number для подсчета индекса последнего элемента (это для бесконечного загрузчика, который служит этот последний идентификатор, каждая перезагрузка). Запрос выглядит следующим образом:

return string.Format(@"SELECT vids.* FROM (
            SELECT *, row_number() OVER (ORDER BY ""{0}"" {1}) AS Idx
                    FROM ""Videos""
                    {2} ORDER BY ""{0}"" {1}
                    ) vids
                    {3}
                    ORDER BY ""{0}"" {1}", field, order, where, lastIdWhere);

Проблема в том, что Idx всегда равен 0 в результате. Мы уже протестировали RAW sql в базе данных, и там он работает без проблем.

Возможно, это проблема аннотации [NotMapped] в сущности Videos. Но нам это нужно, иначе приложение взломает sh, потому что в базе данных нет столбца для Idx.

...