2010-04-19 7 views
5

Estoy en el proceso de convertir un par de sitios hasta .net 4.0 y parece que tengo un problema con la regionalización de las fechas.Formato de fecha roto en .net 4.0 para el formato uk

este código:

Date.Today.AddDays((Date.Today.DayOfWeek - 1) * -1).ToString() 

En .NET 3.5 produce: '19/04/2010 00:00:00' pero tan pronto como puedo cambiar el grupo de aplicación a 4,0 produce: '4/19/2010 12:00:00 AM '

¿Dónde puedo cambiar la configuración que gobierna esto?

+0

Solo para aclarar, ya tengo Cultire y UI Culture configurados en en-GB en .Net Globalization en iis pero parece ignorar por completo esta configuración. –

+0

¿Podría publicar su web.config? –

+0

No tengo configuración de globalización en el web.config en absoluto, de hecho, al agregar una sección de globalización soluciono el problema para el sitio en cuestión, pero no debería tener que hacer esto para cada sitio que quiero ejecutar desde 2.0 y 3.5. nunca tuve un problema! –

Respuesta

2

no creo que se puede probar este lugar, aunque ...

Date.Today.AddDays((Date.Today.DayOfWeek - 1) * -1).ToString(dd/MM/yyy hh:mm:ss); 

Eso debe formatear la fecha que lo necesite.

Microsoft básicamente reconstruyó bastante desde cero para .net 4.0 ... es un dolor en algunas áreas como esta pero una ventaja real en otras.

I sw a guy en otro foro que tiene un gran proyecto que consiste en miles de líneas de código que ahora tiene que buscar y reemplazar en sus declaraciones datetime.tostring.

La mejor práctica siempre ha sido que debe especificar el formato de todos modos, de lo contrario obtendrá lo que decida el marco.

Espero que esto ayude.