powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / ADO .NET Expression с DataTime
7 сообщений из 7, страница 1 из 1
ADO .NET Expression с DataTime
    #35976269
Basile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ситуация банальная, но что-то никак не могу найти решение...
Есть DataTable, у которого два Column типа DataTime. Необходимо добавить ещё один Column типа Decimal, в котором будет отображаться разница в днях.
Возможны ситуации, когда исходные данные типа DataTime в записи содержат Null.
...
Рейтинг: 0 / 0
ADO .NET Expression с DataTime
    #35976318
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basile
но что-то никак не могу найти решение...

Сдаецо мне, что даже просто вычесть даты не получится ... Хотя... Мо, попробовать покрутить CONVERT ...
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
ADO .NET Expression с DataTime
    #35976337
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как говорится: "Хозяйке на заметку"
Код: plaintext
1.
2.
3.
tmpDataTable.Columns.Add("BirthDate",typeof(DateTime));
tmpDataTable.Columns.Add("NowDate",typeof(DateTime));
tmpDataTable.Columns.Add("Age",typeof(double),"NowDate-isnull(BirthDate,0)");
System.Data.EvaluateException
Cannot perform '-' operation on System.DateTime and System.DateTime

Код: plaintext
1.
2.
3.
tmpDataTable.Columns.Add("BirthDate",typeof(DateTime));
tmpDataTable.Columns.Add("NowDate",typeof(DateTime));
tmpDataTable.Columns.Add("Age",typeof(double),"convert(NowDate,'System.Double')-convert(isnull(BirthDate,0),'System.Double')");
System.InvalidCastException
Invalid cast from DateTime to Double

_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
ADO .NET Expression с DataTime
    #35977722
Basile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ex_Soft
Как говорится: "Хозяйке на заметку"
Код: plaintext
1.
2.
3.
tmpDataTable.Columns.Add("BirthDate",typeof(DateTime));
tmpDataTable.Columns.Add("NowDate",typeof(DateTime));
tmpDataTable.Columns.Add("Age",typeof(double),"NowDate-isnull(BirthDate,0)");
[quot System.Data.EvaluateException]
Cannot perform '-' operation on System.DateTime and System.DateTime

Код: plaintext
1.
2.
3.
tmpDataTable.Columns.Add("BirthDate",typeof(DateTime));
tmpDataTable.Columns.Add("NowDate",typeof(DateTime));
tmpDataTable.Columns.Add("Age",typeof(double),"convert(NowDate,'System.Double')-convert(isnull(BirthDate,0),'System.Double')");
System.InvalidCastException
Invalid cast from DateTime to Double

Что-то подобное я уже пробовал проделать и сообщения об ошибках мне знакомы :)
Потому и вопрос задаю!
Кстати, в MSDN сказано, что функция CONVERT тип DataTime может конвертировать только в String и в DataTime:
MSDN DataColumn.Expression
Все преобразования допустимы со следующими исключениями: Boolean может быть преобразован только в/из Byte, SByte, Int16, Int32, Int64, UInt16, UInt32, UInt64, String и самого себя. Char может быть преобразован только в/из Int32, UInt32, String и самого себя. DateTime может быть преобразован только в/из String и самого себя. TimeSpan может быть преобразован только в/из String и самого себя.

А значит:
Код: plaintext
convert(NowDate,'System.Double')
уже ошибка
...
Рейтинг: 0 / 0
ADO .NET Expression с DataTime
    #35977790
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basile
DateTime

А я, если честно, тока

http://msdn.microsoft.com/en-us/library/system.data.datacolumn.expression(VS.80).aspx]All conversions are valid with the following exceptions: Boolean can be coerced to and from Byte, SByte, Int16, Int32, Int64, UInt16, UInt32, UInt64, String and itself only. Char can be coerced to and from Int32, UInt32, String, and itself only. DateTime can be coerced to and from String and itself only. TimeSpan can be coerced to and from String and itself only.

увидел...
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
ADO .NET Expression с DataTime
    #35977868
Basile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну так тоже самое, только на английском. :)
...
Рейтинг: 0 / 0
ADO .NET Expression с DataTime
    #35977877
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
off
Ex_Soft
Basile
DateTime

А я, если честно, тока

TimeSpan can be coerced to and from String and itself only.

увидел...


_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / ADO .NET Expression с DataTime
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]