时间:2010-07-26 05:59:53

标签: jquery json timezone jsonresult

3 个答案:

答案 0 :(得分:1)

答案 1 :(得分:1)

如果在不指定数据为UTC的情况下将其保存在数据库中,则将希望防止JsonResult在序列化期间转换DateTime。为此,您将要使用ActionResult而不是JsonResult,然后使用设置为Unspecified的JsonSerializerSettings序列化Json数据。

public ActionResult GetregisteredUsersJSON() { var usersList = this.GetregisteredUsers() return Content(JsonConvert.SerializeObject(usersList, new JsonSerializerSettings{DateTimeZoneHandling = DateTimeZoneHandling.Unspecified })); }

答案 2 :(得分:0)

今天同样的事情发生在我身上。我正在使用sql server date字段,只是通过MVC将从DB检索到的日期转换为json。我无法解释造成这种差异的原因,但我怀疑它与sql server 08 R2更新有关,这些更新与我的本地环境不同步。

无论如何,我只能通过在c#代码中设置日期来修复它。我创建了一个易于使用的扩展方法:

    public static DateTime DateOnly(this DateTime date)
    {
        return new DateTime(date.Year, date.Month, date.Day);
    }