C # DateTime ToString ( “MM-dd-aaaa”) retorna os valores engraçado dia
-
05-07-2019 - |
Pergunta
Eu tenho o seguinte código no arquivo codebehind de um ASP.Net página
txtStartDate.Text = DateTime.Today.ToString("MM-dd-yyyy");
O que eu esperar para voltar "09-11-2009". No entanto, quando eu executar a página no servidor de desenvolvimento, eu vejo "09-00-2009" na caixa de texto. Não vejo qualquer razão para isso, então eu estou claramente faltando alguma coisa. Alguém tem uma pista?
Solução
cadeia de formato deve funcionar como esperado. Eu verificar a sua caixa de texto para se certificar de que você não tem algum tipo de máscara (AJAX MaskedEditExtender?) Nele. Se você fez, e talvez tivesse a máscara incorreta, poderia substituir o que você estava colocando na caixa de texto.
Outras dicas
Eu não posso pensar por que ele iria mostrar 00, mas como uma sugestão aleatória você pode tentar:
... = DateTime.Today.ToString("MM-dd-yyyy", CultureInfo.InvariantCulture);
Tente algo parecido com isto:
DateTime.Today.ToString("MM-dd-yyyy", CultureInfo.CreateSpecificCulture("en-US"))
você pode verificar data e hora, Now.ToString ()?
Use .Agora para obter a hora local
txtStartDate.Text = DateTime.Now.ToString("MM-dd-yyyy");