我是Linq to SQL的新手,我注意到,当我在数据库中查询结果集并将其直接存储为List(直接使用ToList())时,当我对列表项进行更改时,这些更改仍然存在在我执行SubmitChanges()之后进入数据库。
不知何故,我一直认为ToList()会给我一个副本,而不是实际的集合本身。有人可以扩展这一点,具体来说,我找不到任何关于“使用Linq to SQL更新数据库”和“从数据库获取结果集的真实副本”的链接。
换句话说,如果我想要一个可以编辑但不会对数据库产生影响的结果集,那么方法是什么?
如何获得行集的真正“独立”副本?
答案 0 :(得分:0)
ToList()显然不是很好,在datacontext的范围内。仍将在submitchanges()上跟踪并保留对列表项的更改。获得真实副本的唯一方法是执行手动循环复制属性