XAMLParseException和ConnectionString到Sqlite

时间:2018-07-07 07:54:22

标签: c# wpf sqlite

我在使用WPF Listview并连接到sqlite数据库时遇到问题。 在我以前的项目中,我没有遇到这样的问题,一切都很好。

这是我的代码

 public string cs = @"Data Source=C:\Users\jan\Documents\Visual Studio 2015\Finder\Finder.db";

还有一些我要用来将数据加载到Listview控件中的代码

SQLiteConnection conn = new SQLiteConnection(cs);
        SQLiteCommand cmd = new SQLiteCommand(conn);
        SQLiteDataAdapter adapter = new SQLiteDataAdapter(cmd);
        SQLiteDataReader Pobierz = cmd.ExecuteReader();
        cmd.CommandText = "select * from Finder";
        conn.Open();
        Pobierz.Read();

        var Name = string.Format("{0}", Pobierz["Nazwa"]);
        var Money = string.Format("{0}", Pobierz["Kwota"]);
        var Date = string.Format("{0}", Pobierz["Last"]);

        var gridView = new GridView();
        listaLV.View = gridView;
        gridView.Columns.Add(new GridViewColumn
        {
            Header = "Nazwa",
            DisplayMemberBinding = new Binding("Nazwa"),
            Width = 180
        });
        gridView.Columns.Add(new GridViewColumn
        {
            Header = "Kwota",
            DisplayMemberBinding = new Binding("Kwota"),
            Width = 90
        });
        gridView.Columns.Add(new GridViewColumn
        {
            Header = "Data ostatniej płatności",
            DisplayMemberBinding = new Binding("Last"),
            Width = 220
        });

        listaLV.Items.Add(new Info { Nazwa = Name, Kwota = Money, Last = Date });

        Pobierz.Close();
        conn.Close();

1 个答案:

答案 0 :(得分:0)

代码有点我们的命令。 我知道您知道代码是按顺序执行的,但是在设置cmd.CommandText之前具有.ExecuteReader。 ExecuteReader如何知道如何使用CommandText? 另外,您必须在ExecuteReader之前打开连接。 如果您希望有一条以上的记录,而我想是的话,则需要循环读取数据。

我对WPF不太熟悉,但这应该可以帮助您入门。

SQLiteCommand cmd = new SQLiteCommand(conn);
 cmd.CommandText = "select * from Finder";
 SQLiteDataAdapter adapter = new SQLiteDataAdapter(cmd);
 conn.Open();
 SQLiteDataReader Pobierz = cmd.ExecuteReader();
 while (Pobierz.Read())