答案 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);
}