【问题标题】:List updating when shouldnt?什么时候不应该更新列表?
【发布时间】:2014-07-30 01:27:15
【问题描述】:

我在我的应用程序中使用了一个静态类。它基本上使用访问数据库,并将自身复制到各种列表中。

当用户修改某些数据时,列表中的数据会更新,使用LINQ,如果列表中没有用于修改的条目,则它将向列表中添加一个新项目。

这一切都很好。

但是在第一次数据查询时,我创建了原始列表,基本上所有用户表中的记录,所以我有一个列表lstDATABASERECORDS。

填写此列表后我会做什么lstDATABASERECORDSCOMPARISON=lstDATABASERECORDS

这使我能够快速检查是使用更新还是追加查询。

但是,当我添加到 lstDATABASERECORDS 时,lstDATABASERECORDSCOMPARISON 中也添加了一条记录。

谁能给点建议?

【问题讨论】:

  • 所以,您可能想要标记您在问题中使用的 .Net 语言。

标签: list each updating


【解决方案1】:

您正在分配两个变量来引用列表的同一个实例。相反,您可能想尝试生成列表的克隆以保留增量(不幸的是,ICloneable 在没有额外工作为您的对象定义可克隆语义的情况下没有那么有用),或者使用实现 IEditableObject 和可能 @987654323 的对象@ 用于更改跟踪(那里有几个选项,包括滚动您自己的选项)。

框架(在 EF 之前)没有任何内置功能可以复制旧的 ADO 记录集功能以自动生成仅尝试修改更改的列的更新查询。

【讨论】:

  • 非常感谢,抱歉,我在开始研究重复/指针之前写了这篇文章。
  • 如果您需要进一步的帮助,请随时编辑您的问题以添加更多信息。
猜你喜欢
  • 2010-09-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-27
  • 2018-09-21
  • 2020-07-16
  • 2016-01-10
  • 1970-01-01
相关资源
最近更新 更多