protected async override void OnNavigatedTo(NavigationEventArgs e) { var dbFile = await ApplicationData.Current.LocalFolder.TryGetItemAsync("blogging.db") as StorageFile; if (null == dbFile || SystemInformation.IsFirstRun) { // first time ... copy the .db file from assets to local folder var localFolder = ApplicationData.Current.LocalFolder; var originalDbFileUri = new Uri("ms-appx:///Assets/blogging.db"); var originalDbFile = await StorageFile.GetFileFromApplicationUriAsync(originalDbFileUri); if (null != originalDbFile) { dbFile = await originalDbFile.CopyAsync(localFolder, "blogging.db", NameCollisionOption.ReplaceExisting); } } try { using (var db = new BloggingContext()) { //這裏是傳絕對路徑給的數據上下文 db.DbFilePath = dbFile.Path; db.Database.Migrate(); //// Create db.Add(new Blog { Url = "http://blogs.msdn.com/adonet", TestUrl = "http://blogs.msdn.com/adonet" }); db.SaveChanges(); // Read var blog = db.Blogs .OrderBy(b => b.BlogId) .ToList().Select(b => b.TestUrl); SQLite.ItemsSource = blog; } } catch (Exception ex) { } }