gpt4 book ai didi

javascript - 传递给 Javascript 时的 ASP.NET DateTime 对象 "changes"

转载 作者:行者123 更新时间:2023-11-30 06:34:55 24 4
gpt4 key购买 nike

我的 ASP.NET 网络服务在我的测试环境中的本地计算机上运行。我本地计算机的 UTC 时间是 +1(丹麦)。现在我的 javascript 客户端可以使用这些方法:

[WebMethod(EnableSession=true)]
public DateTime GetDateTime() {
return new DateTime(2013,3,15,10,0,0);
}

[WebMethod(EnableSession=true)]
public void SetDateTime(DateTime DT) {

}

当我从 javascript 调用第一个方法并提醒传递的 DateTime 时,它​​正确显示上午 10 点时间:“2013 年 3 月 15 日星期五 10:00:00 GMT+0100(浪漫标准时间)”在此警报之后,我立即将 DateTime 对象传递回网络服务器。但是当我调试这个对象时,日期时间现在是上午 9 点。怎么会?客户端和服务器运行在同一台机器上。我试过 DateTime.SpecifyKind,但总的来说结果是一样的;当时间被发送回服务器时,客户端减去一个小时。

希望你能帮助我更好地理解这个主题。

提前谢谢你。

最佳答案

@millimoose 我试过 DateTimeOffset 解决方案,但它并没有真正帮助。我不确定我是否 100% 正确地使用了它。现在对我有用的是:

在我将日期时间从服务器发送到客户端之前,我没有对日期时间做任何事情(例如设置 UTC)。然后 javascript 客户端显示正确的时间。当 javascript 将时间发送回服务器时,将添加一个小时。然后我调用 .ToLocalTime();在 DateTime 对象上,现在时间是正确的。

关于javascript - 传递给 Javascript 时的 ASP.NET DateTime 对象 "changes",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15201966/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com