当对象从另一个类返回时无法保存实体框架中的更改

无处不在的开发者

我正在开发从数据库更新记录的简单 MVC 应用程序。我使用 BAL 和 Controller 来获取记录和更新,如下所示

学生.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace WebApplication1.DAL
{
    public class Student
    {
        DemoDatabaseEntities db = new DemoDatabaseEntities();
        public Student_Mast getStudentByID()
        {
            Student_Mast student = db.Student_Mast.Where(i => i.StudID == 1).FirstOrDefault();
            return student;
        }
    }
}

StudentController.cs

public class UpdateController : Controller
{
    DemoDatabaseEntities db = new DemoDatabaseEntities();
    Student _bal = new Student();
    / GET: Update
    public ActionResult Index()
    {
        Student_Mast model = new Student_Mast();
        model = _bal.getStudentByID();
        model.First_Name = "Hardik";
        model.Last_Name = "Gondalia";
        db.SaveChanges();
        return View();
    }
}

但是 db.savechanges() 不会更新记录。
如果我像下面这样更新记录,而不是这个,它可以工作
StudentController.cs

public class UpdateController : Controller
{
    DemoDatabaseEntities db = new DemoDatabaseEntities();
    Student _bal = new Student();
    / GET: Update
    public ActionResult Index()
    {
        Student_Mast model = new Student_Mast();
        model = db.Student_Mast.Where(i => i.StudID == 1).FirstOrDefault();
        model.First_Name = "Hardik";
        model.Last_Name = "Gondalia";
        db.SaveChanges();
        return View();
    }
}
凯文·西伯斯

由于您是从 DbContext 的不同实例检索记录,因此无法保存它。解决方案是向您的 Student 类添加一个构造函数,该类接受一个 DbContext 实例并将其保存到您拥有的变量中。

public class Student
{
    private DemoDatabaseEntities db = null;

    public Student(DemoDatabaseEntities dbContext){
    {
        this.db = dbContext;
    }

    public Student_Mast getStudentByID()
    {
        Student_Mast student = db.Student_Mast.Where(i => i.StudID == 1).FirstOrDefault();
        return student;
    }
}

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

实体框架 - 将一个类的记录插入到另一个“相同”对象中

来自分类Dev

另一个类在框架中的JComponent repaint()

来自分类Dev

无法从另一个类更改 Imageview 的图像

来自分类Dev

当对象是另一个实体类的属性时,使用HQL选择对象列表

来自分类Dev

无法从另一个类获取SQL对象

来自分类Dev

身份用户对象未映射到另一个对象-实体框架

来自分类Dev

返回对象的方法中的另一个对象

来自分类Dev

C ++:在另一个类的函数中返回对象

来自分类Dev

如何从jQuery更改类,但从另一个对象中删除该类

来自分类Dev

如何从jQuery更改类,但从另一个对象中删除该类

来自分类Dev

无法访问Java中另一个类中方法的返回实例

来自分类Dev

如何订购由实体框架填充的另一个对象内的List <T>属性

来自分类Dev

单击同一类中的另一个按钮时,通过 jquery 更改按钮的类更改回

来自分类Dev

获取另一个类中对象的值

来自分类Dev

在另一个类中访问PDO对象

来自分类Dev

控制另一个类中的对象

来自分类Dev

从接口访问另一个类中的对象?

来自分类Dev

访问在另一个类中创建的对象

来自分类Dev

指向另一个类中的对象的指针?

来自分类Dev

在另一个类中填充对象

来自分类Dev

C#中另一个类的对象

来自分类Dev

更改同一数组中的另一个对象时,正在更改的Javascript对象

来自分类Dev

从另一个列表更新列表-实体框架

来自分类Dev

从另一个列表更新列表-实体框架

来自分类Dev

当用户在 Java Swing 中单击按钮时从另一个类创建一个新对象

来自分类Dev

通过存储库更新时,我的一个实体未保存在实体框架中

来自分类Dev

我可以将对象的更改(除了已锁定的对象之外)保存到另一个TR中?

来自分类Dev

选择在实体框架的另一个表中不存在的记录

来自分类Dev

如何将一个实体保存到另一个实体核心数据中

Related 相关文章

  1. 1

    实体框架 - 将一个类的记录插入到另一个“相同”对象中

  2. 2

    另一个类在框架中的JComponent repaint()

  3. 3

    无法从另一个类更改 Imageview 的图像

  4. 4

    当对象是另一个实体类的属性时,使用HQL选择对象列表

  5. 5

    无法从另一个类获取SQL对象

  6. 6

    身份用户对象未映射到另一个对象-实体框架

  7. 7

    返回对象的方法中的另一个对象

  8. 8

    C ++:在另一个类的函数中返回对象

  9. 9

    如何从jQuery更改类,但从另一个对象中删除该类

  10. 10

    如何从jQuery更改类,但从另一个对象中删除该类

  11. 11

    无法访问Java中另一个类中方法的返回实例

  12. 12

    如何订购由实体框架填充的另一个对象内的List <T>属性

  13. 13

    单击同一类中的另一个按钮时,通过 jquery 更改按钮的类更改回

  14. 14

    获取另一个类中对象的值

  15. 15

    在另一个类中访问PDO对象

  16. 16

    控制另一个类中的对象

  17. 17

    从接口访问另一个类中的对象?

  18. 18

    访问在另一个类中创建的对象

  19. 19

    指向另一个类中的对象的指针?

  20. 20

    在另一个类中填充对象

  21. 21

    C#中另一个类的对象

  22. 22

    更改同一数组中的另一个对象时,正在更改的Javascript对象

  23. 23

    从另一个列表更新列表-实体框架

  24. 24

    从另一个列表更新列表-实体框架

  25. 25

    当用户在 Java Swing 中单击按钮时从另一个类创建一个新对象

  26. 26

    通过存储库更新时,我的一个实体未保存在实体框架中

  27. 27

    我可以将对象的更改(除了已锁定的对象之外)保存到另一个TR中?

  28. 28

    选择在实体框架的另一个表中不存在的记录

  29. 29

    如何将一个实体保存到另一个实体核心数据中

热门标签

归档