我已经为此奋斗了一段时间。我正在尝试实现多对一关联。我在一张表中有一堆行,称为读数。这些随着时间的推移而积累,我时不时地想导出它们。当我导出它们时,我想创建一个名为 ExportEvent 的新对象,以跟踪导出了哪些行,以便在需要时重新导出它们。因此 Reading 与 ExportEvent 具有可为空的外键关系,因为我在导出读数之前创建读数。
我发现,当我进行导出时,是否首先创建 ExportEvent (evt) 并使用
evt.Readings.AddRange(),
或者如果我使用
foreach(reading)
reading.ExportEvent = evt
当我调用 SubmitChanges 时,我总是得到一堆新的与 evt 关联创建的读数,并且原始记录没有更新。
我把它简化为最简单的,只是想看看我是否可以创建没有关联的两个对象,我什至发现当我刚刚检索所有读数并更新它们的 int 值时,submitchanges 仍然插入了一堆新记录. 这是怎么回事?