0

我在 MainPage 和 details 页面之间导航时遇到问题。

在主页上,代码如下所示:

private void MainPage_Loaded(object sender, RoutedEventArgs e)
    {
          State.Clear();
          List<Level> lst = new List<Level>();
          using (SqliteCommand selectCmd = Constants.conn.CreateCommand())
          {
              Constants.conn.Open();
              selectCmd.Transaction = Constants.conn.BeginTransaction();
              selectCmd.CommandText = " SELECT * FROM Levels";

              using (SqliteDataReader reader = selectCmd.ExecuteReader())
              {

                  while (reader.Read())
                  {
                      Level lev = new Level();
                      lev.ID = Convert.ToInt32(reader.GetValue(0));
                      lev.Name = reader.GetValue(1).ToString();
                      lev.levelScore = Convert.ToInt32(reader.GetValue(2));
                      lst.Add(lev);
                  }
              }
              selectCmd.Transaction.Connection.Close();
          }
          Constants.conn.Close();
          levelList.ItemsSource = lst;

        }

它设置页面上的项目。我在详细信息页面上导航。当我导航回 MainPage 时,问题就来了……虽然 State 是 Clear 并且 levelItems 是 0 它呈现了页面的前一个视图,并且当它尝试访问 sqlConnection 时会抛出异常。

4

0 回答 0