C# 控制器中的私有成员在操作结果中设置后返回null
我在ASP.NET MVC应用程序中有一个控制器C# 控制器中的私有成员在操作结果中设置后返回null,c#,asp.net,asp.net-mvc,entity-framework,C#,Asp.net,Asp.net Mvc,Entity Framework,我在ASP.NET MVC应用程序中有一个控制器 private GipDbContext db = new GipDbContext(); private Employee employeeObj; public ActionResult Edit(int? id) { Employee employee = db.Employees.Find(id); //employeeObj SET TO ANOTHER OBJECT
private GipDbContext db = new GipDbContext();
private Employee employeeObj;
public ActionResult Edit(int? id)
{
Employee employee = db.Employees.Find(id);
//employeeObj SET TO ANOTHER OBJECT
employeeObj = employee;
return View(employee);
}
public PartialViewResult TimeSeriesData(int? tsdataid)
{
TimeSeriesData tsobject = new TimeSeriesData();
// employeeObj RETURNING NULL
foreach (var item in employeeObj.TimeSeriesData){
if (item.TimeSeriesDataID == tsdataid)
{
tsobject = item;
break;
}
}
第一个被调用的方法是Edit,当调用TimeSeriesData时,employeeObj返回null,即使它是在Edit方法中设置的。。知道为什么吗?为每个请求实例化控制器。一旦您请求
TimeSeriesData
,为请求Edit
而创建的控制器已被释放。如果您需要在请求之间保留一段数据,您必须将其放入会话
或TempData
(两者都使用会话)。如果您不介意的话,可以帮我看一下这个问题吗?看看我对答案的评论。