|
C#. Как из DateTime конвертировать в TimeSpan? | ☑ | ||
---|---|---|---|---|
0
batmansoft
04.05.14
✎
13:02
|
Или подскажите пожалуйста, как другим способом красиво ввести значение TimeSpan? Пытаюсь при помощи DateTimePecer, но в классе Convert нет метода для конвертации в TimeSpan
|
|||
1
iamnub
04.05.14
✎
13:24
|
Ты понмаешь что такое TimeSpan?
|
|||
2
su_mai
04.05.14
✎
13:40
|
(0) Красиво ввести значение - оригинальная формулировка. Красиво "по Макконелу" или "по Радченко"?
|
|||
3
skunk
04.05.14
✎
14:00
|
||||
4
Steel_Wheel
04.05.14
✎
14:26
|
Вопрос в тему, как конвертировал .NET DataTime() в OracleTimeStamp(), чтобы он считался валидным параметром SQL-запроса к Oracle DB?
|
|||
5
batmansoft
04.05.14
✎
14:31
|
(1) Понимаю, это тип который можно прибавить к DateTime (Почему то сам DateTime нельзя прибавить к DateTime)
|
|||
6
batmansoft
04.05.14
✎
14:32
|
(3) Спасибо за ссылку, ща сгляну
|
|||
7
skunk
04.05.14
✎
14:34
|
(5)а что ты хотел бы получить прибавляя "26 июля 1992г." к "27 июля 1992г."
|
|||
8
batmansoft
04.05.14
✎
14:34
|
Если я правильно понял, то только так: сделать отдельное поле для дней, часов, минут и секунд и по ним уже создать экземпляр TimeSpan, других безгеморройных способов нет?
|
|||
9
skunk
04.05.14
✎
14:36
|
почему TimeSpan(Int64) можешь создать через 1 параметр
|
|||
10
batmansoft
04.05.14
✎
14:36
|
(7) 3985 год, 22 февраля, как то так.
|
|||
11
batmansoft
04.05.14
✎
14:37
|
(9) Но это будет не красиов - то бишь пользователю неудобно вводить число тактов, откуда ему знать, сколько тактов в одном часе или десяти минутах, например?
|
|||
12
skunk
04.05.14
✎
14:46
|
ну можешь заставить вводить в одно поле по маске кд.кч:км:кс ... ну и сам дальше высчитывать инт64 для TimeSpan(Int64) ... либо распарсивать и инициализировать через TimeSpan(Int32, Int32, Int32, Int32)
|
|||
13
Steel_Wheel
04.05.14
✎
15:13
|
А про (4) никто не скажет, раз уж вы тут DateTime() мусолите?
|
|||
14
skunk
04.05.14
✎
15:18
|
(13)у тебя непонятно ... ты про это
to_timestamp('12-01-2012 21:24:00', 'dd-mm-yyyy hh24:mi:ss') |
|||
15
Steel_Wheel
04.05.14
✎
16:21
|
(14) Не совсем
... SELECT * FROM PERSON WHERE PSN_CREATED_DATE >= :createdPrior ... command.Parameters.Add(":createdPrior", ???) А вот вместо ??? надо передать переменную. Изначально это DateTime(), но выбрасывается исключение Exception: Additional information: ORA-00932: inconsistent datatypes: expected TIMESTAMP got NUMBER Конвертировать в строку тоже пробовал, результат аналогичный |
|||
16
ERWINS
04.05.14
✎
16:23
|
command.Parameters.Add("createdPrior", ???)
двоеточие не надо |
|||
17
Steel_Wheel
04.05.14
✎
16:24
|
(16) Попробую
|
|||
18
Steel_Wheel
05.05.14
✎
21:35
|
(16) Попробовал. Параметр можно указывать в методе Add() тремя способами:
- просто имя - имя с двоеточием спереди - имя с амперсандом спереди. При составлении запроса очень важна ОЧЕРЕДНОСТЬ параметров, т.к. они подставляются в порядке вызовов методов Add(). Имена параметров при этом не учитываются. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |