Terry's blog

Focus on bigdata and cloud.

博客园 首页 新随笔 联系 订阅 管理

概述:

     在Nhibernate对数据记录进行更新的时候,如果对同一条记录进行重复执行修改时,出现如下错误:

a different object with the same identifier value was already associated with the session: 25, of entity: Model.JkptOaxtWeatherforecast.

解决办法:

    错误原因时不同的对象具有相同的标识符,当我们读取数据是通过映射绑定列表时,是将记录绑定到对象上,当你在同一个请求的时候使用多次绑定(重复执行修改),这样就会出现不同的对象,而这些对象却有相同的关键值(映射的主键),所以就会出现标题的错误. 所以解决的方法也就出来了,只要我们在取得列表后,执行一下删除就可以了.

 

  public static bool ModifyRecord(string[] args)
        {
             
bool IsSuccess = false;
            
//更新数据

                 
             session.Clear();
             
return IsSuccess;
            }

 

OK,我遇到的是这个问题,如果你也遇到如题所述错误,不防试试是否能解决.

posted on 2009-02-26 10:33  王晓成  阅读(1290)  评论(1编辑  收藏  举报