У меня есть веб-API, который я создаю в C #.Этот веб-API используется в качестве внешнего интерфейса для запроса базы данных SQL.Я использую SqlKata в качестве движка для выполнения запросов.При создании предложения WHERE в документации SqlKata говорится следующее:
Несколько полей
Если вы хотите отфильтровать запрос по нескольким полям, передайте объект, представляющий столбцы / значения.
var query = new Query("Posts").Where(new {
Year = 2017 ,
CategoryId = 198 ,
IsPublished = true,
});
Я хочу быть в состоянии избежать жесткого кодирования предложения WHERE, а скорее основывать его на переданных в строках запроса.Моя идея состояла в том, чтобы добавить каждое имя и значение строки запроса в словарь, а затем каким-либо образом использовать значения этого словаря в предложении SqlKata .Where ().Я подумал, что, возможно, смогу преобразовать словарь в необходимый анонимный объект, но я не могу заставить его работать.Любые люди идеи о том, как это сделать?Поэтому мой URL может быть следующим:
https://webapi.com.au/api?store=120&name=james
Словарь: store = 120 name = james
Запрос: var query = new query ("Posts"). Где (anonObject)
(anonObject будет {store = 120, name = james})