Quelle est la pratique préférée pour gérer le format DateTime entre client (javascript, ajax) et serveur (ASP MVC) pour une demande internationale?Faire face au format DateTime pour une application internationale
Sur la base de mes recherches:
- Format du serveur: aaaa-mm-jj
- client Format: aaaa-mm-jj
Ecraser le liant modèle DateTime de l'ASP MVC avec la coutume liant modèle comme
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();
}
}
et formater la date à côté client par:
function toISOString(d) {
var year = d.getFullYear();
var month = d.getMonth() + 1;
var date = d.getDate();
return year + '-' + month + '-' + date;
}
et une dernière question - ayant mis ce qui précède, comment le serveur vérifier le décalage DateTime ou Décalage horaire du client si cela doit prendre pour compte avant d'entrer dans l'application?
S'il vous plaît vérifier la version de Wikipédia de la spécification [ISO8601] (http://en.wikipedia.org/wiki/ISO_8601) pour voir comment vous êtes censé traiter fuseaux horaires lorsque la valeur de la date et de l'heure est formatée selon ISO-8601 (UTC - 2013-07-06T02: 28Z ou avec fuseau horaire ... 2013-07-06T09: 28 + 07: 00) –
L'ISO est la voie à suivre. :) Et si vous envisagez de faire beaucoup d'autre chose avec la mise en forme de la date du côté client, jetez un oeil à [moment.js] (http://momentjs.com/). –