对于国际应用程序,在客户端(javascript、ajax)和服务器(ASP MVC)之间处理DateTime 格式的首选做法是什么?
根据我的研究:
- 服务器格式:yyyy-mm-dd
- 客户端格式:yyyy-mm-dd
用自定义模型绑定器覆盖 ASP MVC 的 DateTime 模型绑定器,例如
public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
{
try
{
var value = bindingContext.ValueProvider.GetValue(bindingContext.ModelName);
return value.ConvertTo(typeof(DateTime), CultureInfo.InvariantCulture);
}
catch (Exception ex)
{
return new DateTime();
}
}
并通过以下方式在客户端格式化日期:
function toISOString(d) {
var year = d.getFullYear();
var month = d.getMonth() + 1;
var date = d.getDate();
return year + '-' + month + '-' + date;
}
最后一个问题 - 设置了上述内容后,服务器如何检查客户端的DateTime 偏移量或Timezone 偏移量,如果在进入应用程序之前必须考虑到这一点?