将Listview保存到SQL数据库

将Listview保存到SQL数据库,sql,database,vb.net,listview,Sql,Database,Vb.net,Listview,对于整个编程世界来说都是新手,所以如果这个问题不值得问,我很抱歉 我正在开发一个VB应用程序,它使用File Watcher扫描用户选择的任何路径 结果将显示在列表视图中。我有一个“导出”按钮,我想在单击后将结果发送到SQL数据库 以下代码适用于输出: System.Windows.Forms.ListView+ListViewItemCollection 我希望它显示结果 提前谢谢 Private Sub Button7_Click(sender As Object, e As EventAr

对于整个编程世界来说都是新手,所以如果这个问题不值得问,我很抱歉

我正在开发一个VB应用程序,它使用File Watcher扫描用户选择的任何路径

结果将显示在列表视图中。我有一个“导出”按钮,我想在单击后将结果发送到SQL数据库

以下代码适用于输出:

System.Windows.Forms.ListView+ListViewItemCollection

我希望它显示结果

提前谢谢

Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click
con = New SqlConnection("Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\Users\David\Documents\Monitor.mdf;Integrated Security=True;Connect Timeout=30")
con.Open()
cmd = New SqlCommand("INSERT INTO [Monitor] (Changes) VALUES (@Changes)", con)
cmd.Parameters.AddWithValue("@Changes", ListView1.Items.ToString())      
cmd.ExecuteNonQuery()
    End Sub                                                                                                                                                                                                                                                    

您希望您的代码如下所示:

cmd = New SqlCommand("INSERT INTO [Monitor] (Changes) VALUES (@Changes)", con)
cmd.Parameters.AddWithValue("@Changes", "dummy")
ForEach li as ListItem in ListView1.Items
    cmd.Parameters("@Changes").Value = li.Text
    cmd.ExecuteNonQuery() 
Next li

End Sub
…将所有列表项插入数据库

或者你想要这个:

cmd = New SqlCommand("INSERT INTO [Monitor] (Changes) VALUES (@Changes)", con)
cmd.Parameters.AddWithValue("@Changes", ListView1.SelectedItem.Text)
cmd.ExecuteNonQuery() 
它将插入选定的项目(taskShowListView.Items中的ListViewItem项目行) {

            if (itemRow.Selected == true)
            {

                int taskId = Convert.ToInt32(itemRow.SubItems[0].Text);
                string taskDate = itemRow.SubItems[1].ToString();
                string taskDescription = itemRow.SubItems[2].ToString();

                MessageBox.Show("selected");

                ListViewItem listViewItem = new ListViewItem((taskId[0].Text));
                listViewItem.SubItems.Add(taskDate[1].ToString());
                listViewItem.SubItems.Add(taskDescription[2].ToString());
                taskShowListView.Items.Add(listViewItem);

            }



        }

您必须循环浏览列表视图中的每个项目,然后对每个项目执行插入。请在所有代码行前面至少放置四个空格。如果您使用的是VB,而不是c#,那么它将成为一个格式良好的灰色框。请更正标记/张贴中的此不匹配。感谢您的帮助,我真的无法获得我的hea现在我知道了,我很感激。:)