这个问题的灵感来自我在这里提出的一个较早的问题,我从那个问题中了解到 DbContext 实例应该是短暂的依赖关系。现在鉴于我使用 SQL CE 使用本地数据库开发 LOB 桌面应用程序,我有几个问题:
- 在我的情况下(本地数据库、单用户、桌面应用程序),DbContext 真的应该存在很短的时间吗?
- 如果我在每次操作时都处理掉我的 DbContext,那会让我丢失在其生命周期中收集的所有跟踪信息吗?
- 如果 2 的答案是真的(麻烦!),如何以正确的方式去做,我应该开发一个 UnitOfWork 来保持更改跟踪信息还是什么?!