Angularjs 知道为什么在客户端我只得到部分可变日期时间吗?
我在我的项目中使用WebAPI和angularjs 我有这门课:Angularjs 知道为什么在客户端我只得到部分可变日期时间吗?,angularjs,asp.net-web-api,asp.net-web-api2,Angularjs,Asp.net Web Api,Asp.net Web Api2,我在我的项目中使用WebAPI和angularjs 我有这门课: public class DamageEvent { public int Id { get; set; } public int? ClientId { get; set; } public DateTime? CreateDate { get; set; } } 从客户端,我使用http服务调用此操作方法: public async Task<IHt
public class DamageEvent
{
public int Id { get; set; }
public int? ClientId { get; set; }
public DateTime? CreateDate { get; set; }
}
从客户端,我使用http服务调用此操作方法:
public async Task<IHttpActionResult> RetriveDamageEvents()
{
try
{
//Using Linq to Entity to get data from DataBase.
DamageEvent damageEvent = _repository.Get().Where(some logic).SingleOrDefault();
//The content of damageEvent after retriving from database is:
//damageEvent = {id = 1, ClientId = 25, CreateDate = 5/1/2016 5:26:14 PM}
return Ok(damageEvent);
}
catch (Exception)
{
return BadRequest();
}
}
正如您在客户端object damageEvent中看到的CreateDate属性,缺少变量的这一部分:
5:26:14 PM
你知道为什么在客户端我只得到部分可变日期时间吗?为什么缺少小时、分钟和秒吗?听起来像是一个序列化问题。在App_Start/WebApiConfig.cs文件中,您可以设置序列化程序设置
config.Formatters.JsonFormatter.SerializerSettings.DateTimeZoneHandling=DateTimeZoneHandling.Utc代码>
我建议所有日期都存储为UTC,然后您的客户可以决定如何显示。这样,系统中的每个日期都是一致的 这看起来不像是AngularJS的问题。JSON是否在端点请求的响应之上?如果是,那么它就不是AngularJs。检查使用rest客户端或浏览器时是否得到相同的结果
5:26:14 PM