Usuário com melhor resposta
Cadeia de caracteres não foi reconhecida como DateTime válido - Internet Explorer e Microsoft Edge somente

Pergunta
-
Fala pessoal. Tudo bem!?
Estou com um erro que está me deixando maluco.
Estou tentando fazer um parse de string para datetime e não estou conseguindo.
var dt = DateTime.ParseExact(data, "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None);
Ao tentar passar essa linha acima, ele gera o erro:
"Cadeia de caracteres não foi reconhecida como DateTime válido"
Vamos aos detalhes.... A variável {data} está com a data formata de hoje, ou seja, 20/06/2017.
Abrindo o Immediate Window e tentar executar:
DateTime.ParseExact(data, "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None);
Gera erro. Porém, se executar:
DateTime.ParseExact("20/06/2017", "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None);
Funciona.
OK... Como uma forma de tentar resolver o problema, resolvi fazer um SPLIT dessa informação pela barra e dar um new Date informando cada campo separadamente.
Para minha surpresa, apresenta um erro de parse no momento de converter para int o dia.
if (!string.IsNullOrEmpty(data)) { var parteData = data.Split(@"/".ToCharArray()); var dia = int.Parse(parteData[0]); var mes = int.Parse(parteData[1]); var ano = int.Parse(parteData[2]); dataVencimento = new DateTime(ano, mes, dia); }
E este problema só ocorre com o Internet Explorer e o Microsoft Edge. Se eu utilizar o Google Chrome, Firefox, Opera, Safari, etc etc etc, funciona.
Alguma dica?
- Editado Guilherme de Souza de F Teodoro terça-feira, 20 de junho de 2017 12:38
Respostas
-
Boa tarde, Guilherme de Souza de F Teodoro.
Tudo bem?
Você conseguiu resolver o problema?
Atenciosamente,Filipe B de Castro
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
- Marcado como Resposta Filipe B CastroModerator quinta-feira, 29 de junho de 2017 20:21
Todas as Respostas
-
-
Não é o meu caso.
A minha variável data está retornando com o formato dd/MM/yyyy.Volto a dizer: Nos navegadores não Microsoft, funcionam perfeitamente.
Parece que tem alguma configuração que afeta o code behind.No método, se eu atribuir uma variável qualquer com o mesmo valor e fazer o parse, funciona sem problemas.
-
Boa tarde, Guilherme de Souza de F Teodoro.
Tudo bem?
Você conseguiu resolver o problema?
Atenciosamente,Filipe B de Castro
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
- Marcado como Resposta Filipe B CastroModerator quinta-feira, 29 de junho de 2017 20:21