IMO你的问题不是实现而是设计。
用户的时间可能是错误的,原因有多种:用户选择,合法(例如在俄罗斯定义时区的法律和每隔几年的夏令时变化,这样政府提醒人们它仍然存在)或技术(硬件失败) ,移动运营商设备的错误设置)。
您有3个选项如何修复:
让服务器返回TimeSpan而不是DateTime。
让服务器获取客户端的当前时间,并在客户端的时钟中返回ETA。
(最复杂,仅对非常时间敏感的任务需要,例如“Solar + Lunar Eclipse Schedule”应用程序)在启动和激活您的应用程序时,与您的服务器协商有关客户端设备上UTC日期+时间之间的时差,和服务器的时钟。