http://www.gotdotnet.ru/forums/7/130104/
Добрый день!
прошу знатаков и опытных разработчиков помощи:
исходные данные:
есть приложение для win mobile 6.1, которое использует Compact Framework net 3.5( и еще использует SQL CE 3.5)
в эмуляторе все работает как надо.
проблема:
при исполнении приложения на кпк вылетает ошибка:
SQLCeException
Data type is not valid for the boolean operation.[ Data type (if known) = datetime,Data type (if known)= nvarchar]
гугление привело сюда:
http://technet.microsoft.com/en-us/library/ms172350(SQL.100).aspx
(т.е. как я понял, это ошибка обработчка запросов sqlce 3.5 sp1)
откуда известно, что код ошибки 25955, но как ее исправить нигде не сказано.
sql-запрос при выполнении которого происходит ошибка:
cmd.CommandText = "select (DateTimeStamp),(CurrencyTicker) from CashFlowTable where (UserName = '" + loginedUserName + "' and DateTimeStamp between '" + tempDateFrom + "' and '" + tempDateTill + "')";
dataReader = cmd.ExecuteReader();
ошибка в этом запросе появляется только, если указываю диапазон дат, который интересует.
Если диапазон даты не указывать, ошибка не возникает, т.е это выполняется без ошибки:
cmd.CommandText = "select (DateTimeStamp),(CurrencyTicker) from CashFlowTable where (UserName = '" + loginedUserName + "')";
dataReader = cmd.ExecuteReader();
еще раз повторюсь, на эмуляторе все работает отлично,и с кпк запросы к базе из под query analyser выполняются нормально.
установка service pack2 sql ce 3.5 не помогло.
смена региональных настроек на кпк не помогло( на эмуляторе американская, в кпк -русская)
попытки принудительно натравить кпкашную CLR на сборку, которую использует эмулятор( System.Data.SqlServerCe)
тоже ничего недали...
прочие танцы с бубном тоже не помогли.
Есть идеи как реишть проблему? Может кто сталкивался? или хотябы куда копать?