DbContext 实例:每个 Web 请求一个?
设计理念
为每个 Web 请求创建一个独立的 DbContext 实例是 Web 应用中的常见做法。与为整个应用使用单个 DbContext 实例相比,这种方法具有诸多优势。
优势
适用场景
为每个 Web 请求使用单个 DbContext 实例适用于以下应用场景:
瞬态 DbContext 实例的局限性
虽然理论上可以将 DbContext 注册为瞬态的(即每个对象一个实例),但这可能会导致以下问题:
context.SaveChanges()
显式保存更改。如果忽略此步骤,更改将会丢失。结论
为每个 Web 请求使用单个 DbContext 实例对于数据一致性、隔离性和代码可维护性具有明显的优势。权衡利弊后,对于数据完整性和并发性至关重要的 Web 应用,强烈建议采用这种方法。
以上是我应该在应用程序中每个Web请求使用一个DBContext吗?的详细内容。更多信息请关注PHP中文网其他相关文章!