首页 > 其他 > 详细

UnitOfWork 更新实体出错解决办法

时间:2014-09-10 13:59:00      阅读:271      评论:0      收藏:0      [点我收藏+]

用UnitOfWork进行实体更新的时候,再查询实体一次,再去更新的时候会报如下错误:

Attaching an entity of type TinyFrame.Data.DomainModel.t_user_application failed because another entity of the same type already has the same primary key value. This can happen when using the Attach method or setting the state of an entity to Unchanged or Modified if any entities in the graph have conflicting key values. This may be because some entities are new and have not yet received database-generated key values. In this case use the Add method or the Added entity state to track the graph and then set the state of non-new entities to Unchanged or Modified as appropriate.

 

解决办法如下:

    public virtual async Task<T> GetOne(Expression<Func<T,bool>> where) {
            return await _dbSet.Where(where).AsNoTracking().FirstOrDefaultAsync();
        }

用AsNoTracking不进行跟踪,就可以更新了

记录下

UnitOfWork 更新实体出错解决办法

原文:http://www.cnblogs.com/flyfish2012/p/3964198.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!