将 datetimeoffset 传递到网络 api

Passing datetimeoffset to web api

我遇到了日期时间偏移问题。 我需要将 datetimeoffset 传递到我的网站 api,但我无法将它发送到我的网站 api。 这是我的模型 属性:

 public DateTimeOffset? PlannedStart { get; set; }
 public DateTimeOffset? PlannedTarget { get; set; }

这里我从 typescript 传递过来:

 let body: string = JSON.stringify(this.sprintReview);
 let url: string = environment.baseUrl + "api/SprintReview/SaveSprintReview";
                this.baseService.post(url, body).subscribe((data: any) => {
                    this.alertContent = "Saved Successfully.";
 }

我知道它会减去 5:30 小时,因为我的时区是 5:30+GMT

请帮助我将 datetimeoffset 传递到我的网站 api。我需要在数据库中保存带有偏移量的日期时间。

谢谢

您的浏览器可能已经在 HTTP header 中设置了您需要的信息,但目前我认为 W3C 还没有批准用于此目的的标准 header所以依赖它可能会有问题。

目前唯一可靠的方法是将本地计算机的时区添加到您发送的 JSON。

W3C 发表了一篇讨论时区处理问题的论文,可在 https://www.w3.org/TR/timezone/ 获取。在实施解决方案之前,您应该阅读它。