2013-08-02 15 views
5

Ciao Ho un problema con il recupero di datetime dal database SQLite utilizzando la libreria sqlite-net. colonna Db è di tipo DATE, ad esempio la data in uno dei record è: 2013-08-02Recupero datetime Sqlite-net

Ho un modello:

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

    ... 

    public DateTime AccountingDate { get; set; } 

    ... 
} 

eseguo questa riga di codice:

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

Ogni campo eccetto AccountingDate viene compilato correttamente, tutti i campi DateTime vengono riempiti con il valore: {1/1/0001 12:00:00} (visualizzazione di Visual Studio Visivo). Perché la data non è stata analizzata correttamente? Ho provato a passare il tipo di colonna Db a DATETIME e TEXT ma ho ottenuto gli stessi risultati.

MODIFICA. L'oggetto dc utilizzato in precedenza è di tipo SQLiteConnection dalla libreria sqlite-net.

+0

Ho inserito manualmente i valori nella colonna AccountingDate tramite SQLite Expert Professional (è presente un Datepicker incorporato) –

risposta

0

Invece di DATETIME, Tipo di utilizzare i dati come Data a DATA negozio senza MOMENTO.

consultare this.link http://www.tutorialspoint.com/sqlite/sqlite_data_types.htm

Spero che vi aiuterà.

+0

Ho indicato nella mia domanda che la colonna Db (lato del database SQLite) è di tipo DATE. DateTime è di tipo .net che uso nel mio modello. Inoltre, ho provato a memorizzare la data nel database in un campo di tipo DATETIME e TEXT, ma come indicato nella mia domanda, i risultati erano gli stessi. –

1

Esiste una proprietà StoreDateTimeAsTicks sull'oggetto SQLiteConnection che è necessario utilizzare. Impostalo su 'false'. Ha funzionato per me

+0

Dovrebbe essere accettato. L'argomento viene inviato al contructor e la data viene riempita –