C # DateTime ToString («MM-jj-aaaa») renvoie des valeurs de jours amusantes
-
05-07-2019 - |
Question
J'ai le code suivant dans le fichier codebehind d'une page ASP.Net
txtStartDate.Text = DateTime.Today.ToString("MM-dd-yyyy");
Ce que je pense retourner "09-11-2009". Cependant, lorsque je lance la page sur le serveur de développement, le message "09-00-2009" est affiché. dans la zone de texte. Je ne vois aucune raison à cela, alors il me manque clairement quelque chose. Quelqu'un a un indice?
La solution
Cette chaîne de format doit fonctionner comme prévu. Je vérifierais votre zone de texte pour vous assurer que vous n'avez pas de masque (AJAX MaskedEditExtender?). Si vous le faisiez et que le masque était incorrect, il pourrait écraser ce que vous mettiez dans la zone de texte.
Autres conseils
Je ne vois pas pourquoi cela indiquerait 00, mais comme suggestion aléatoire, vous pouvez essayer:
... = DateTime.Today.ToString("MM-dd-yyyy", CultureInfo.InvariantCulture);
Essayez quelque chose comme ça:
DateTime.Today.ToString("MM-dd-yyyy", CultureInfo.CreateSpecificCulture("en-US"))
Pourriez-vous vérifier Datetime, Now.ToString ()?
Utilisez .Now pour obtenir l'heure locale
txtStartDate.Text = DateTime.Now.ToString("MM-dd-yyyy");