在我的应用程序中,每个用户都可以添加新书。 可以添加本书的照片。表单中的所有字段均为必填字段,但是如果用户要稍后填写此表单,他可以将表单的一半保存为工作副本。我不知道我该如何构建工作副本功能,该功能将仅保存书籍的新照片并删除旧照片。
height: 100%
我有两个主意,但是我需要选择一个(或者可能会发现不同)最佳优化:
我认为:
如果有人对如何正确使用此方法有一些想法,我将很感激。
最好的问候:)
答案 0 :(得分:0)
比较BookPhotos.Id
从数据库中选择工作集的Book的BookPhotos。对于每张DB照片:
对于每张工作现场照片:
或者,Web请求可以指定哪些记录是新的,修改的和删除的,而不仅仅是提供模型的新状态。然后,您只需对数据库执行这些操作即可。
与此相关的一个缺点是您信任客户端。如果说添加一个已经存在的项目(主键)或修改/删除一个不存在的项目,则数据库操作当然会失败。您可以决定在这种情况下如何响应客户端,以及是否将所有操作作为单个事务回滚或允许有效的工作进行落实。