C# 将对象添加到数据库后访问对象属性
我有一个create方法,在该方法中,我向数据库中添加了一个新的Employee对象,添加员工后,我希望进入编辑页面,以便能够输入有关该员工的更多详细信息 编辑操作方法采用1个参数,即EmployeeID,但是一旦将对象添加到Employee表中,数据库就会动态分配此EmployeeID。在同一操作方法中,如何在_db.SaveChanges()之后访问新添加员工的ID 下面是我的方法的一部分:C# 将对象添加到数据库后访问对象属性,c#,mysql,.net,asp.net-mvc,entity-framework,C#,Mysql,.net,Asp.net Mvc,Entity Framework,我有一个create方法,在该方法中,我向数据库中添加了一个新的Employee对象,添加员工后,我希望进入编辑页面,以便能够输入有关该员工的更多详细信息 编辑操作方法采用1个参数,即EmployeeID,但是一旦将对象添加到Employee表中,数据库就会动态分配此EmployeeID。在同一操作方法中,如何在_db.SaveChanges()之后访问新添加员工的ID 下面是我的方法的一部分: [HttpPost] [ValidateAntiForgeryToken] public Actio
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create(Employee Employee) {
_db.Employees.Add(Employee);
_db.SaveChanges();
//access the employee and gets its id???
//var id = id???
return RedirectToAction("EditEmployeeViewModel", new { id = id});
}
尝试以下代码并访问最新的当前员工Id,如
employee.Id
:-
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create(Employee Employee) {
_db.Employees.Add(Employee);
_db.SaveChanges();
var id = Employee.Id;
return RedirectToAction("EditEmployeeViewModel", new { id = id});
}
你可以用这个:
Employee.Id
Employee
对象与您对db
所做的更改同步。因此,当您将此对象添加到Employees
并调用SaveChanges
时,此对象将保存到db
,其状态将更新,并具有员工的Id
具体地说,正如它所说:
默认情况下,实体框架在每个插入之后都带有SELECT
使用自动生成的ID时,作用域\标识()
@欢迎你,伙计。我很高兴我帮了忙。