2010-04-19 12 views
5

Ich bin dabei, ein paar Websites bis zu. NET 4.0 zu konvertieren und ich habe ein Problem mit der Regionalisierung von Daten.Datum Format in .net 4.0 für Großbritannien Format

Dieser Code:

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

In .net 3.5 produziert: '19/04/2010 00.00.00' aber sobald ich die app-Pool 4.0 ändern sie produziert: ‚4/19/2010 12:00:00 '

Wo kann ich die Einstellung ändern, die das steuert?

+0

Nur um zu verdeutlichen, habe ich bereits Citire und UI Culture auf en-GB in.Net Globalisierung in iis gesetzt, aber es scheint diese Einstellung vollständig zu ignorieren! –

+0

Können Sie Ihre web.config posten? –

+0

Ich habe überhaupt kein Globalisierungs-Setup in der web.config, tatsächlich fügt das Hinzufügen eines Globalisierungsabschnitts das Problem für die fragliche Seite hinzu, aber ich sollte dies nicht für jede Site tun müssen, die ich seit 2.0 und 3.5 ausführen möchte Hatte nie ein Problem! –

Antwort

2

Ich glaube nicht, dass Sie dies obwohl stattdessen versuchen können ...

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

, dass das Datum formatiert werden sollte, wie Sie es brauchen.

Microsoft hat im Grunde eine ganze Menge von Grund auf für .net 4.0 neu aufgebaut ... es ist ein Schmerz in einigen Bereichen wie diesem, aber ein echter Vorteil in anderen.

Ich bin ein Kerl in einem anderen Forum, das ein riesiges Projekt hat, das aus Tausenden von Codezeilen besteht, die er nun auf seinen datetime.tostring-Anweisungen finden und ersetzen muss.

Best Practice war schon immer, dass Sie das Format sowieso angeben sollten, sonst bekommen Sie, was auch immer das Framework entscheidet.

Hoffe, das hilft.