BLToolkit like и upper case
От: 23Poison  
Дата: 04.03.12 09:54
Оценка:
Всем привет!

Есть такая задача:
есть некая таблица v.GetTable<T>() так вот для нее надо построить where условие со значениями в upper case
типа того:
v.GetTable<T>().Where(string.Format(" upper({0}) like upper('%{1}%') ",column, value);
тк нужно применительно к Postgresql, то можно использовать ILIKE или ~~*, соответственно без upper()

подскажите, люди добрые
Re: BLToolkit like и upper case
От: IT Россия linq2db.com
Дата: 05.03.12 00:37
Оценка:
Здравствуйте, 23Poison, Вы писали:

P>Есть такая задача:

P>есть некая таблица v.GetTable<T>() так вот для нее надо построить where условие со значениями в upper case
P>типа того:
P>v.GetTable<T>().Where(string.Format(" upper({0}) like upper('%{1}%') ",column, value);
P>тк нужно применительно к Postgresql, то можно использовать ILIKE или ~~*, соответственно без upper()

v.GetTable<T>().Where(t => t.Column.ToUpper().Contains(value))
Если нам не помогут, то мы тоже никого не пощадим.
Re[2]: BLToolkit like и upper case
От: 23Poison  
Дата: 06.03.12 05:02
Оценка:
Здравствуйте, IT,
спасибо за ответ
Вы писали:

IT>v.GetTable<T>().Where(t => t.Column.ToUpper().Contains(value))


возможно я не совсем корректно поставил вопрос
есть ф-я private WGridPagingData<T> SelectData<T>
в рамках данной ф-ии происходит вызов v.GetTable<T>()

тоесть конкретный тип не известен.
пример:
private IEnumerable<T> SelectData<T>(....){
IQueryable<T> items = v.GetTable<T>();
items.Where(.....)
var result = items.ToArray();
}
как тут быть?
Re[3]: BLToolkit like и upper case
От: 23Poison  
Дата: 06.03.12 05:42
Оценка:
Хочу дополнить, что при вот, к примеру такая запись
items.Where(string.Format(" lower({0}) like lower(%{1}%) ", FilterItems[i].FieldName, FilterItems[i].StrValue));

дает вот такую ошибку No applicable method 'lower' exists in type 'r_catalog'
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.