EntitiyFramework检索和存储后退实体

时间:2016-09-27 08:09:09

标签: c# entity-framework

我遇到EntityFramework的问题。在我的应用程序中有一个异步GetCollections方法,它将返回一个`Task>:

public async Task<List<MyCollection>> GetCollections() {,

 IQueryable<MyCollection> query;
 query = ...;
 var result = await query.ToListAsync();
 return result;
}

问题是ToListAsync()调用,它创建(看起来像)实体的副本。当我稍后修改一些返回的集合并调用DbContext.SaveChanges()时会抛出异常,因为要存储具有相同主键的多个实体。所以我的问题是,我该怎么办呢?

编辑:

好的,我已经重写了这个方法,而不是返回IQueriable。这解决了具有相同主键的多个实体的问题,但是当循环遍历IQueriable和修改实体时,抛出异常,因为无法实例化到数据库的第二个连接。还有其他类型我可以返回,这解决了这个问题吗?

0 个答案:

没有答案