您好,我正在使用 MVC 4 和 C# 开发具有两个控制器的应用程序:第一个称为业务,它有一个称为 Create 的方法,该方法从另一个名为 PartnerController 的控制器调用一个称为 CreatePartner 的方法。
public class BusinessController : Controller
{
private storeContext db = new storeContext();
public ActionResult Create(Business business)
{
//Some stuff here
PartnerController pt = new PartnerController();
pt.CreatePartner(int partner_id);
//Here is another stuff that uses db DbContext variable
return RedirectToAction("Index");
}
}
这是第二个控制器称为合作伙伴
public class PartnerController : Controller
{
private storeContext db = new storeContext();
public void CreatePartner(int partner_id)
{
//Some interesting stuff
}
}
每个控制器都有其 Dispose() 方法
问题是:从业务控制器调用 CreatePartnet 方法后,我尝试再次使用 db 变量来保存其他数据,但它抛出了以下异常:
The operation can not be completed because the DbContext has been disposed
- 使用从一个控制器到另一个具有相同 DbContext 变量名称的方法的最佳方法是什么?
- 发生了一些奇怪的事情:我的东西在本地工作,但是当我在 IIS 服务器中发布我的代码时,应用程序会抛出该异常。
谢谢!