Ленивая загрузка данных в Dapper с использованием HotChocolate GraphQLC#

Место общения программистов C#
Anonymous
Ленивая загрузка данных в Dapper с использованием HotChocolate GraphQL

Сообщение Anonymous »

У меня возникла проблема с использованием GraphQL с библиотекой HotChocolate в серверной части C#. Когда я использую фильтрацию, загружается вся таблица, а затем она фильтруется. Это, конечно, означает ужасную производительность, поскольку каждый раз выполняется полное сканирование таблицы.
Это запрос

Код: Выделить всё

        [UseFiltering]
public IQueryable
 GetFilteredPersons(
[Service] IPersonRepo repo)
{
return repo.GetAll().AsQueryable();
}
А это репозиторий

Код: Выделить всё

        public IEnumerable
 GetAll()
{
var query = "SELECT * FROM Persons";
var param = new DynamicParameters();
return SqlMapper.Query(GetConnection()
query, param,
commandType: CommandType.Text);
}
Как передать фильтры в предложение WHERE? Может быть, с помощью DapperExtensions, использующего предикат? В любом случае это будет сложно, поскольку фильтры в запросе GraphQL на самом деле недоступны.


Подробнее здесь: https://stackoverflow.com/questions/672 ... te-graphql

Вернуться в «C#»