从DataGridView和数据库中删除选定的行

时间:2012-04-11 16:31:20

标签: c# winforms entity-framework datagridview

我想从DataGridView中删除所选行,此删除应该会影响数据库。我正在使用Entity Framework,这是我的代码无效。

private void button4_Click(object sender, EventArgs e)
{
    var toBeDeleted = (int)dataGridView1.SelectedRows[0].Cells[0].Value;
    var TE = new TaskEntities();
    var UD = new userdata();
    UD = TE.userdatas.First(c => c.ID == toBeDeleted);
    TE.DeleteObject(UD);
    TE.SaveChanges();
}

2 个答案:

答案 0 :(得分:0)

您的DGV是否绑定到任何dataSource? 是这样,从数据源中删除行,然后使用Update命令(或更新sql查询)在数据库中执行chnages。

答案 1 :(得分:0)

试试这个:

private void button4_Click(object sender, EventArgs e)
{
     var toBeDeleted = (int)dataGridView1.SelectedRows[0].Cells[0].Value;
     var TE = new TaskEntities();
     var userdata = TE.userdatas.First(c => c.ID == toBeDeleted);
     TE.userdatas.Remove(userdata);
     TE.SaveChanges();
     dataGridView1.DataSource = TE.userdatas;
}