1

C# MVC 中静态字段的生命周期是什么:

private static InventoryMgmtContext _dbContext = new InventoryMgmtContext();
public ManageWorkOrdersAppServ()
    : base(new WorkOrderHeaderRepository(_dbContext )) 
{
    _workOrderHeaderRepository = new WorkOrderHeaderRepository(_dbContext);
    _workOrderDetailRepository = new WorkOrderDetailRepository(_dbContext);

}

在这种情况下 _dbContext 什么时候死?这是我无法澄清的另一个问题的后续行动。

4

1 回答 1

8

静态字段的AppDomain生命周期与加载类型的生命周期一样长。无论环境如何,都是如此。

现在在 Web 环境中,IIS 将AppDomain在某些情况下回收 - 所以你不应该永远依赖它。

如果这确实是一个数据库上下文,我认为它根本不应该在静态字段中。通常,您为单个“工作单元”创建数据库上下文。

于 2013-06-14T18:04:54.283 回答