2010-04-19 17 views
5

Sono in procinto di convertire un paio di siti fino a .net 4.0 e mi sembra di avere un problema con regionalizzazione delle date.Formato data interrotto .net 4.0 per il formato uk

Questo codice:

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

In .net 3.5 produce: '19/04/2010 00:00:00' ma appena posso cambiare il pool di app a 4,0 produce: '4/19/2010 12:00:00 AM

Dove posso modificare l'impostazione che lo regola?

+0

Giusto per chiarire, ho già impostato Cultire e UI Culture su en-GB in .Net Globalization in iis ma sembra ignorare completamente questa impostazione! –

+0

Potresti pubblicare il tuo web.config? –

+0

Non ho alcuna configurazione di globalizzazione nel web.config, infatti, l'aggiunta di una sezione di globalizzazione risolve il problema per il sito in questione, ma non dovrei farlo per ogni sito che voglio eseguire da 2.0 e 3.5 mai avuto un problema! –

risposta

2

non credo che si può provare questo posto se ...

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

Questo dovrebbe formattare la data come avete bisogno.

Microsoft ha fondamentalmente ricostruito il lotto quitea da zero per .net 4.0 ... è un problema in alcune aree come questa, ma un vero vantaggio in altri.

Scambia un ragazzo su un altro forum che ha un enorme progetto costituito da migliaia di righe di codice che ora deve trovare e sostituire nelle sue dichiarazioni datetime.tostring.

Le migliori pratiche sono sempre state che è necessario specificare il formato in ogni caso altrimenti si ottiene qualsiasi cosa decida il framework.

Spero che questo aiuti.