Gibt es eine Möglichkeit, anzugeben, dass ich alle der DateTime
s, die Ormlite materialisiert auf UTC Art gesetzt werden soll?Gibt es eine OrmLite-Option für DateTime.SpecifyKind (DateTimeKind.Utc)?
speichere ich eine Menge DateTime
s in meiner Datenbank über gespeicherte Prozeduren, wenn eine Zeile eingefügt:
insert [Comment] (
Body
, CreatedOn
) values (
@Body
, getutcdate()
);
Wenn ich die Werte über eine select-Anweisung in ormlite abzurufen, die Datetimes in Unspecified
Art kommen (die als lokale Zeitzone interpretiert wird, glaube ich):
var comments = db.SqlList<Comment>("select * from [Comment] where ... ");
ich nicht lieber einzeln jedes Datetime-Objekt zu setzen:
foreach (var comment in comments) {
comment.CreatedOn = DateTime.SpecifyKind(comment.CreatedOn, DateTimeKind.Utc);
}
fand ich diese Frage, aber ich glaube nicht ganz, es ist, was ich zu fragen:
servicestack ormlite sqlite DateTime getting TimeZone adjustment on insert
gefunden Auch this pull request, aber SqlServerOrmLiteDialectProvider.EnsureUtc(true)
Einstellung scheint nicht entweder zu tun.
Für diejenigen, die auf dieser Seite gelandet sind, aber Ormlite v3 mit Sqlite-Dialekt verwenden: Es gibt einen Fehler, bei dem wenn Sie eine DateTime mit einer Art von Utc beibehalten und eine Millisekunde von 0, die Kind auf Local wechselt lies das DateTime zurück. –