DataGridView是可编辑的,但不会使用Entity Framework将更改发送回数据库

安农

我将自己绑定DataGridView到我,ComboBox以便无论在中选择什么值ComboBox,SID和Mark的相应值都将出现在中DataGridViewDataGridView我这样做的时候是可编辑的,但是当它是输入数据不保存在数据库中。有没有办法更新它?如果还有另一种方法,我首先必须警告说DataGridView,如果我尝试将整个“ Student_Course”表绑定到DataGridView其他不需要的列,则只需要SID和Mark即可

private void cboeCID_SelectedIndexChanged_1(object sender, EventArgs e)
{
    var CID = Convert.ToInt32(cboeCID.Text);
    using (var db = new Entities2())
    {
        var course = from c in db.Student_Course
                     where c.CID == CID
                     select new Class1
                     {
                         SID = c.SID,
                         Mark = c.Mark
                     };
        editDataGridView.DataSource = course.ToList();
        Validate();
        editDataGridView.EndEdit();
        editDataGridView.Update();
    }
}

class Class1
{
    public int SID { get; set; }
    public int Mark { get; set; }

}
雷扎·阿盖伊

上面的代码中有一些重要的问题:

  1. 您将查询的结果调整Class1为不是您的实体类型的自定义

  2. 您使用了DbContextinusing语句,这意味着db将在using语句之后处理该语句,并且不会跟踪更改。

  3. 您调用SaveChanges了另一个您DbContext不知道更改的实例,因此没有任何反应。

要解决上述问题,请考虑以下技巧:

  1. 创建db为的字段,Form并在Load发生时实例化它Form并将其用于加载和保存数据。
  2. 您可以通过以下方式加载数据实体:

    db = new Entities2();
    db.Student_Course.Where(x => c.CID== CID).ToList();
    editDataGridView.DataSource = db.Student_Course.Local; 
    
  3. 您可以通过以下方式保存数据:

    editDataGridView.EndEdit();
    db.SaveChanges();
    
  4. 如果需要使用与实体不同的视图模型进行编辑,则在保存更改时,应首先使用上下文的另一个实例从数据库加载原始实体,然后为每个实体设置更改字段的值,然后调用SaveChanges方法。

有关更多信息,请查看以下资源:

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用Entity Framework以可编辑的DataGridView和上下文跟踪更改的方式筛选数据?

来自分类Dev

如何通过单击按钮将DataGridView数据中的更改发送到数据库(访问)?

来自分类Dev

AJAX到PHP不会使用NODEJS将数据发送到数据库

来自分类Dev

AJAX到PHP不会使用NODEJS将数据发送到数据库

来自分类Dev

将更改保存到Entity Framework 6中的数据库

来自分类Dev

将更改保存到Entity Framework 6中的数据库

来自分类Dev

X可编辑,不会更新数据库中的值

来自分类Dev

使用Passport js failureRedirect方法将数据发送回

来自分类Dev

如何使用回调将数据发送回先前的ViewController

来自分类Dev

将DataGridView的更改保存到数据库

来自分类Dev

Entity Framework 6.1将数据库放在哪里?

来自分类Dev

为什么会使用线程数据争用,但不会使用gevent

来自分类Dev

使用Entity Framework 5将大量数据从旧数据库移动到新数据库

来自分类Dev

使用EtherCard.h库将arduino数据发送到我的数据库

来自分类Dev

使用EtherCard.h库将arduino数据发送到我的数据库

来自分类Dev

如何在 firebase 数据库数据更改上使用 cloudfunctions 发送 Firebase 通知?

来自分类Dev

尝试使用Entity Framework将值保存到数据库时出现元数据错误

来自分类Dev

查询数据库和未保存的更改以使用 Entity Framework 6 进行验证

来自分类Dev

将 DbContext.SaveChanges 异常记录到 Entity Framework/Entity Framework Core 中的数据库

来自分类Dev

SQLite数据库不会使用Python变量更新

来自分类Dev

数据库不会使用php形式更新值

来自分类Dev

使用Jquery / ajax将数据发送到数据库

来自分类Dev

如何使用Jquery和Ajax将Json数据发送到数据库中?

来自分类Dev

使用Jquery / ajax将数据发送到数据库

来自分类Dev

使用SqlDataSource将数据从FormView发送到我的数据库

来自分类Dev

如何使用Jquery和Ajax将Json数据发送到数据库中?

来自分类Dev

在使用jQuery将数据发送到数据库时,如何使按钮处于活动状态?

来自分类Dev

使用AJAX将数据发送到数据库失败

来自分类Dev

如何使用vue.js(ajax)将数据发送到数据库

Related 相关文章

  1. 1

    如何使用Entity Framework以可编辑的DataGridView和上下文跟踪更改的方式筛选数据?

  2. 2

    如何通过单击按钮将DataGridView数据中的更改发送到数据库(访问)?

  3. 3

    AJAX到PHP不会使用NODEJS将数据发送到数据库

  4. 4

    AJAX到PHP不会使用NODEJS将数据发送到数据库

  5. 5

    将更改保存到Entity Framework 6中的数据库

  6. 6

    将更改保存到Entity Framework 6中的数据库

  7. 7

    X可编辑,不会更新数据库中的值

  8. 8

    使用Passport js failureRedirect方法将数据发送回

  9. 9

    如何使用回调将数据发送回先前的ViewController

  10. 10

    将DataGridView的更改保存到数据库

  11. 11

    Entity Framework 6.1将数据库放在哪里?

  12. 12

    为什么会使用线程数据争用,但不会使用gevent

  13. 13

    使用Entity Framework 5将大量数据从旧数据库移动到新数据库

  14. 14

    使用EtherCard.h库将arduino数据发送到我的数据库

  15. 15

    使用EtherCard.h库将arduino数据发送到我的数据库

  16. 16

    如何在 firebase 数据库数据更改上使用 cloudfunctions 发送 Firebase 通知?

  17. 17

    尝试使用Entity Framework将值保存到数据库时出现元数据错误

  18. 18

    查询数据库和未保存的更改以使用 Entity Framework 6 进行验证

  19. 19

    将 DbContext.SaveChanges 异常记录到 Entity Framework/Entity Framework Core 中的数据库

  20. 20

    SQLite数据库不会使用Python变量更新

  21. 21

    数据库不会使用php形式更新值

  22. 22

    使用Jquery / ajax将数据发送到数据库

  23. 23

    如何使用Jquery和Ajax将Json数据发送到数据库中?

  24. 24

    使用Jquery / ajax将数据发送到数据库

  25. 25

    使用SqlDataSource将数据从FormView发送到我的数据库

  26. 26

    如何使用Jquery和Ajax将Json数据发送到数据库中?

  27. 27

    在使用jQuery将数据发送到数据库时,如何使按钮处于活动状态?

  28. 28

    使用AJAX将数据发送到数据库失败

  29. 29

    如何使用vue.js(ajax)将数据发送到数据库

热门标签

归档