Api 当另一个用户首先更改数据库时,如何检查用户所做的数据更改?

Api 当另一个用户首先更改数据库时,如何检查用户所做的数据更改?,api,web,save,dto,Api,Web,Save,Dto,以下是流程: 用户#1点击Get端点以检索DTO对象(让我们称此对象为“公司”) 用户#1更新公司对象中的地址信息 当用户#1编辑地址信息时,另一个用户(用户#2)正在更改电话号码并在用户#1保存其信息之前保存此信息 用户#1 DTO对象仍包含旧电话号码 问题是:当用户1提交其更改时,将Dto值与数据库值进行比较会给人留下更新用户1对象中电话的印象 这是一个真实的场景。如果我在保存User#1对象时简单地比较当前数据库字段,可能会给人这样的印象:User#1电话已更改,需要保存到数据库中,但实际

以下是流程:

  • 用户#1点击Get端点以检索DTO对象(让我们称此对象为“公司”)
  • 用户#1更新公司对象中的地址信息
  • 当用户#1编辑地址信息时,另一个用户(用户#2)正在更改电话号码并在用户#1保存其信息之前保存此信息
  • 用户#1 DTO对象仍包含旧电话号码
  • 问题是:当用户1提交其更改时,将Dto值与数据库值进行比较会给人留下更新用户1对象中电话的印象

    这是一个真实的场景。如果我在保存User#1对象时简单地比较当前数据库字段,可能会给人这样的印象:User#1电话已更改,需要保存到数据库中,但实际上是旧电话号码

    那么这个问题是如何解决的呢?PUT端点是否需要两个参数:原始DTO和更改的DTO?我无法将DTO与实体对象进行比较,因为可能有其他人进行了更改