Получение даты и времени в sqlite-net

Привет, у меня проблема с извлечением даты и времени из базы данных SQLite с использованием библиотеки sqlite-net. Столбец Db имеет тип DATE, пример даты в одной из записей: 2013-08-02.

У меня есть модель:

internal class FCost
{
    [PrimaryKey, AutoIncrement]
    public int Id { get; set; }

    ...

    public DateTime AccountingDate { get; set; }

    ...
}

Я выполняю эту строку кода:

var result = dc.Table<FCost>().ToArray();

Все поля, кроме AccountingDate, заполнены правильно, все поля DateTime заполнены значением: {1/1/0001 12:00:00 AM} (представление отладчика Visual Studio). Почему дата не разбирается правильно? Я попытался переключить тип столбца Db на DATETIME и TEXT, но получил те же результаты.

РЕДАКТИРОВАТЬ. Используемый выше объект dc имеет тип SQLiteConnection из библиотеки sqlite-net.


person Jarek Mazur    schedule 02.08.2013    source источник
comment
Я ввел значения в столбец AccountingDate вручную через SQLite Expert Professional (есть встроенный datepicker)   -  person Jarek Mazur    schedule 02.08.2013


Ответы (2)


У объекта SQLiteConnection есть свойство StoreDateTimeAsTicks, которое вы должны использовать. Установите значение «false». Работал у меня.

person Alexei Vinidiktov    schedule 22.08.2015
comment
Следует принять. Аргумент отправляется конструктору и заполняется Дата - person Vagner Gon; 15.07.2016

Вместо ДАТА ВРЕМЯ ИСПОЛЬЗУЙТЕ тип данных как Дата, чтобы СОХРАНИТЬ ДАТУ БЕЗ ВРЕМЕНИ.

См. Эту ссылку http://www.tutorialspoint.com/sqlite/sqlite_data_types.htm

Надеюсь, это вам поможет.

person Dineshcool    schedule 02.08.2013
comment
В своем вопросе я указал, что столбец Db (сторона базы данных SQLite) имеет тип DATE. DateTime - это тип .net, который я использую в своей модели. Кроме того, я попытался сохранить дату в базе данных в поле типа DATETIME и TEXT, но, как указано в моем вопросе, результаты были такими же. - person Jarek Mazur; 02.08.2013