加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – 防止JsonResult自动格式化日期

发布时间:2020-12-16 09:37:09 所属栏目:asp.Net 来源:网络整理
导读:我正在编写一个基于云的程序,它利用UTC将日期保存到服务器,并在往返时将其转换回来.问题是,我在云端的实例是根据获取结果的浏览器上的本地化设置自动转换JsonResult日期时间值. 我已经完成了大量的步骤,以确保两个级别上的服务器端代码都返回正确的数据,并且
我正在编写一个基于云的程序,它利用UTC将日期保存到服务器,并在往返时将其转换回来.问题是,我在云端的实例是根据获取结果的浏览器上的本地化设置自动转换JsonResult日期时间值.

我已经完成了大量的步骤,以确保两个级别上的服务器端代码都返回正确的数据,并且它在所有实例上,并且我的页面上没有任何Javascript代码进行更改(甚至删除了我的所有Javascript日期格式为了以防万一),我已经用Firebug进行了追踪,以确定它改变的确切点,就是我的页面从我的JsonResult方法接收Json结果.就像我说的那样,我在发送到页面之前调试了这些值,它们是正确的,并且根据我的响应,它们会根据浏览器位置进行修改….

有人有过类似的问题吗?

返回值:日期(1341792000000)07/08/2012 17:00

应该是:日期(1341817200000)(07/09/2012 12:00 AM)

谢谢

解决方法

我最终得到了正确的结果,对我的应用程序进行了很多修改.我做了很多事情来实现这一点……首先,我实现了timezone.JS以获取将在应用程序中使用的时区列表,并使用jstz获取浏览器加载页面的当前时区.接下来,我必须使(用于mvc)一个文件get方法访问时区以加载到timezoneJS.

接下来,在保存时区时,我将pst指定为类型,然后在roundtrip上转换回utc以更新接口.

在格式化我的Json日期时,我运行timezoneJS方法并从jstz获取时区名称,并设置新的日期值,如下所示:

var timezone = jstz.determine();
timezoneJS.timezone.zoneFileBasePath = '/Item/GetTz'; // get file method
var dt = new timezoneJS.Date(parseInt(jsonDate.substr(6),timezone.name())); // strips out date from json date
dt.setTimezone('America/Los_Angeles');

这允许云项目在任何服务器上运行,并在任何浏览器中显示,而不管时区如何,并允许用户本地查看和配置时区敏感数据,并允许用户查看可配置数据库值的开始/结束日期.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读