Terry's blog

是建高楼大厦,还是搭窝棚?--------我要建高楼大厦。"只要决心成功,失败就不会把我们击垮" -------《羊皮卷》

博客园 首页 新随笔 联系 订阅 管理
  337 Posts :: 1 Stories :: 232 Comments :: 51 Trackbacks

公告

概述:

     在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 王晓成 阅读(657) 评论(1) 编辑 收藏