BLToolkit генерирует SQL не совместимый с SQL
От: guyver  
Дата: 18.03.11 17:07
Оценка: 33 (1)
Как пример.
Берем тестовый проект
http://bltoolkit.net/GetFile.aspx?Page=Doc.Linq&File=LinqWithBLToolkit.zip
После сборки он вылетает с эксепшеном Неправильный синтаксис около
конструкции "," тут
var query = from o in db.Order where Math.Round(o.Freight) >=10 select
o.Freight;

Смотрим сгенерированый запрос

WHEN [o].[Freight] — Floor([o].[Freight]) = 0,5 AND Floor([o].[Freight])
% 2 = 0

и видим что там запятая вместо точки.
Как это пофиксить?
Posted via RSDN NNTP Server 2.1 beta
Re: BLToolkit генерирует SQL не совместимый с SQL
От: IT Россия linq2db.com
Дата: 18.03.11 18:10
Оценка:
Здравствуйте, guyver, Вы писали:

G>WHEN [o].[Freight] — Floor([o].[Freight]) = 0,5 AND Floor([o].[Freight])

G>% 2 = 0

G>и видим что там запятая вместо точки.

G>Как это пофиксить?

Забираем новую версию. Я там заменил NumberFormatInfo.InvariantInfo на собственный вариант.

ЗЫ. Но вообще-то всё это очень странно. Invariant Culture не зависит от текущей локализации. Нужно очень постараться, чтобы в ней оказался русский формат числа. В общем, либо MSDN нагло врёт, либо у вас какие-то с этим проблемы.
Если нам не помогут, то мы тоже никого не пощадим.
Re[2]: BLToolkit генерирует SQL не совместимый с SQL
От: guyver  
Дата: 18.03.11 18:42
Оценка:
18.03.2011 21:10, IT пишет:
> Забираем новую версию.

По какому адресу?
А то по старой ссылке лежит тот же самый файл.

> ЗЫ. Но вообще-то всё это очень странно. Invariant Culture не зависит от

> текущей локализации. Нужно очень постараться, чтобы в ней оказался
> русский формат числа. В общем, либо MSDN нагло врёт, либо у вас какие-то
> с этим проблемы.

Какие именно могут быть проблемы?
Posted via RSDN NNTP Server 2.1 beta
Re[3]: BLToolkit генерирует SQL не совместимый с SQL
От: IT Россия linq2db.com
Дата: 19.03.11 13:26
Оценка:
Здравствуйте, guyver, Вы писали:

G>По какому адресу?


http://bltoolkit.net/download/bltoolkit.zip

G>Какие именно могут быть проблемы?


Например, вы где-то ручками изменяете InvariantInfo.
Если нам не помогут, то мы тоже никого не пощадим.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.