Servicestack. ormlite завершается неудачей, если условие имеет подзапрос
Я использую ServiceStack.OrmLite v4. 0. 62 из-за .NET Framework 4.0. мне нужно выполнить функцию поиска. Поскольку мои классы POCO имеют глубокую иерархию,мне нужно использовать запросы LINQ с вложенными подзапросами.:
// some code is omitted Expression<Func<Person,bool>> condition = p => p.Name.Contains("John") && p.Addreses.Any(adr => adr.City.Contains("Moscow") && adr.Street.Contains("Yuri Gagarin") && adr.Building == 23); // and so on... // some code is omitted // Gets the quantity of records were found public int GetCountBy(Expression<Func<T,bool>> condition) { // here it throws an Exception return db.Persons.Count(condition); }
А теперь он выбрасывает исключение:
variable 'person' of type 'Reestr.DAL.Entities.Person' referenced from scope '', but it is not defined
Такое же исключение возникает, когда мы используем другой метод, который поддерживает выражение в качестве параметра. Мои вопросы таковы: как я могу решить эту проблему? Поддерживает ли OrmLite такие запросы?
Что я уже пробовал:
Я пытался создать свое выражение вручную, но это мне не помогает. Кроме того, я попытался использовать другие методы OrmLite.
Mehdi Gholam
Попробуйте связаться с оригинальным автором(АМИ).