Tengo una falla de validación extraña en un sitio de ASP.NET MVC 3 con un cuadro de texto que acepta un datetime elegido a través de jqueryui. El sitio se ha personalizado para que funcione solo con la cultura es-ES y funciona la mayor parte del tiempo, pero la validación falla cada vez que se usa determinado mes en ese cuadro de texto. El método DateTime.Parse funciona para todos los meses excepto en marcha:datetime.parse falla para marzo en español, cada dos meses funciona
DateTime.Parse("15-feb-2012",CultureInfo.GetCultureInfo("es"), DateTimeStyles.None)
{15/02/2012 0:00:00}
Date: {15/02/2012 0:00:00}
DateTime.Parse("15-ene-2012",CultureInfo.GetCultureInfo("es"), DateTimeStyles.None)
{15/01/2012 0:00:00}
Date: {15/01/2012 0:00:00}
DateTime.Parse("15-abr-2012",CultureInfo.GetCultureInfo("es"), DateTimeStyles.None)
{15/04/2012 0:00:00}
Date: {15/04/2012 0:00:00}
...
cada mes, excepto trabajos de marzo de Marzo en español ...
DateTime.Parse("15-mar-2012",CultureInfo.GetCultureInfo("es"), DateTimeStyles.None)
DateTime.Parse("15-mar-2012",CultureInfo.GetCultureInfo("es"), DateTimeStyles.None)' threw an exception of type 'System.FormatException'
base {System.SystemException}: {"String was not recognized as a valid DateTime."}
Alguna idea?
Ha comprobado foros y/o documentación en línea para asegurarse de que su específico de la cultura meses abreviatura es correcta? –
Puede que no esté seguro de interpretarlo como "mar" para "marzo" o para "martes"; intente especificar el formato de fecha con ParseExact. – Random832
No tuve ningún problema con esto. Aunque podría estar haciéndolo mal. ¿Se puede reproducir en un entorno de prueba más pequeño (aplicación de consola o algo así) y pegar el método para probarlo? –