Чтение формата TimeSpan из SQLite в datGridView - PullRequest
0 голосов
/ 23 августа 2011

После долгих поисков и поисков я все еще не могу сделать это:

Поместите значение C # TimeSpan, превышающее 24 часа, в числовой столбец таблицы SQLite и верните его в .NET DataGridView в правильном формате для этих больших значений промежутка времени.

Если я сделаю что-то вроде этого:

cmd.CommandText = "insert into test (s) values (@s)";
cmd.CreateParameter<TimeSpan>("s", new TimeSpan(23,59,59));

тогда

cmd.CommandText = "select time(s) as s from test";

и связать результат с DataGridView

Я вижу правильное форматированное значение 23:59:59 в столбце s.

После того, как я увеличил значение TimeSpan, столбец остается пустым (без сообщения об ошибке), и никакая другая функция форматирования не помогла мне попробовать.

Тем не менее, оба просмотра SQLiteAdministrator и базы данных SQLite показывают, например, 1.00: 59: 59 с TimeSpan (24,59,59) в команде вставки, поэтому значение в таблице, очевидно, в порядке.

Может, кто-нибудь подскажет, как добиться чтения в формате 1.00: 59: 59?

Большое спасибо.

1 Ответ

0 голосов
/ 23 августа 2011

Эта ссылка может быть полезна:

http://msdn.microsoft.com/en-us/library/ee372287.aspx

duration.ToString("dd\.hh\:mm\:ss")

Вам также не нужно указывать 'time (s) as s' 'в вашем операторе select, просто напишите:

select s from test
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...