我想根据sqlite db的结果更改我的应用的起始页面。我从appmenifist文件中删除了nevigationpage参数。在App.xaml.cs中我正在使用
的应用程序启动功能 Conn = new SQLiteAsyncConnection(DB_PATH);
var BabayData = Conn.QueryAsync<baby>("SELECT * FROM baby");
if (BabayData.Count == 0)
{
RootFrame.Navigate(new Uri("/Profile.xaml", UriKind.Relative));
}
else
{
RootFrame.Navigate(new Uri("/MainPage.xaml", UriKind.Relative));
}
但它显示错误的结果。 (我查了一下,查询没有给出任何结果。)如果有一个婴儿,我怎么能解决这个问题MainPage.xaml shuld b start page。
此致
答案 0 :(得分:0)
我认为您的应用在连接到数据库之前就已启动了。所以你可以创建一个prelogin页面或试试这个:
private async void Application_Launching(object sender, LaunchingEventArgs e)
{
try
{
await ApplicationData.Current.LocalFolder.GetFileAsync(DB_PATH);
Connection = new SQLiteAsyncConnection(DB_PATH);
}
catch (FileNotFoundException)
{
CreateDbAsync(); // create if not exists
}
}