[英]SQLite.Net PCL support / workaround for Windows Phone 8.1
[英]SQLite.Net Extensions Data insertion error on Windows Phone 8.1 Runtime project
我一直在對所有數據庫操作使用SQLiteAsyncConnection,最近我才知道它不允許表之間的關聯。 現在,我正在移動代碼以使用支持擴展的SQLite.Net擴展。 當我將日期時間數據插入表中時,我發現了一個奇怪的問題。 它完全更改了插入的日期時間。
App.db2.Insert(new FrequentlyAssignedShifts()
{
ShiftStart = Convert.ToDateTime(btnShiftStart.Content.ToString()),
ShiftEnd = Convert.ToDateTime(btnShiftEnd.Content.ToString()),
});
這就是建立連接的方式。
string databasePath = Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, "Scheduler.sqlite");
public static SQLiteConnection db2;
var platform = new SQLite.Net.Platform.WinRT.SQLitePlatformWinRT();
db2 = new SQLiteConnection(platform, databasePath);
我使用斷點檢查到最后一點,是否插入了正確的數據。 一切似乎都很好,它是從按鈕控件中獲取正確的日期,但是一旦它通過了代碼的這一部分,日期值就會改變。 “ ShiftStart&ShiftEnd”變量是表中的日期時間變量。 有人可以建議。
感謝您閱讀這篇文章。
也許為時已晚,但據我所知,時間在數據庫中保存為滴答,所以不要使用“ Date”或“ Timestamp”或其他任何東西,而應使用bigint,因此,該字段將使用UTC將時間保存為滴答,一旦從數據庫中檢索到值,請使用DateTime和vioala中的函數“ ToLocalTime()”!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.