【发布时间】:2018-04-12 13:58:53
【问题描述】:
我用下面的代码做了一个测试来更新Product:
var existing = await _productRepository.FirstOrDefaultAsync(c => c.Id == input.Id);
if (existing == null)
throw new UserFriendlyException(L("ProductNotExist"));
var updatedEntity = ObjectMapper.Map<Product>(input);
var entity = await _productRepository.UpdateAsync(updatedEntity);
但它会抛出异常:
Mvc.ExceptionHandling.AbpExceptionFilter - 无法跟踪实体类型“Product”的实例,因为已经在跟踪具有相同键值 {'Id'} 的另一个实例。附加现有实体时,请确保仅附加一个具有给定键值的实体实例。
这是由查询existing 引起的。有什么解决办法吗?
【问题讨论】:
标签: c# entity-framework aspnetboilerplate change-tracking asp.net-boilerplate