让我们说我需要对数据库执行几个不同的查询。每个查询返回不同的数据。每个查询都将在不同于UI线程的线程上执行。
我是否应该为数据库的所有查询都有一个线程,或者每个查询可以自由地拥有一个线程?建议的做法是什么?
答案 0 :(得分:1)
单个ObjectContext/DbContext
实例应不用于并发数据库访问,因为它不适用于此类方案。
与不同上下文实例加载的对象交互是容易出错的,因为所有相关的实体实例都应该属于单个上下文实例。否则,您必须附加和分离实体。
如果所有操作都是读取,则首选拥有多个线程来检索数据,而对于CRUD操作,建议使用带有线程的单个上下文实例。