Передача пустых списков в запрос Oracle с помощью Dapper - PullRequest
0 голосов
/ 11 июля 2019

Как передать один или несколько пустых списков в запрос оракула с помощью Dapper?

На основании рекомендации из этого поста https://stackoverflow.com/a/47552047/1462656

мой запрос выглядит так

public IEnumerable<Result> GetConcepts(List<string> types, List<string> sources)
{
    using (var cnn = SimpleDbConnection())
    {
        cnn.Open();

        int typesCount = types.Count;
        int sourcesCount = sources.Count;

        string query = @"SELECT mrconso.cui, mrconso.sab, mrsty.sty
                        from mrconso
                        inner join mrsty
                        on mrconso.cui = mrsty.cui ";

        query += "WHERE :sourcesCount = 0 OR mrconso.SAB IN :sources AND :tCount= 0 OR mrsty.TUI IN :types";

        return cnn.Query<Result>(query, new {tCount= typesCount, sourcesCount = sourcesCount, types = types, sources = sources });
    }
}

Но я получаю ошибку

"ORA-00923: ключевое слово FROM не найдено там, где ожидается"

Когда я выполняю запрос со списком источников в виде пустого списка. (Тот же результат, когда один из списков пуст и оба они пусты)

...