Übergeben einer DateTime an den Controller über eine URL, die einen Fehler in ASP.NET MVC 3 verursacht (Kultur)

Meine Anwendung ist setted mit pt-BR-Kultur (Datum dd-mm-yyyy) im web.config:

<globalization enableClientBasedCulture="false" requestEncoding="utf-8" responseEncoding="utf-8" fileEncoding="iso-8859-15" responseHeaderEncoding="utf-8" resourceProviderFactoryType="string" enableBestFitResponseEncoding="true" culture="pt-BR" uiCulture="pt-BR" />

Alle DateTime erstellt, die auf meinem system ist im richtigen format, aber erstellt habe ich eine controller-Methode so:

public ActionResult Test(DateTime date)
{
}

Aufruf der Methode direkt im browser die übergabe von null wird das Datum mit Portugiesisch-br-format, so:

mysite/Test/?date=19/01/2012   => date = null in my controller

mysite/Test/?date=01/01/2012   => date is fine, but in US format (mm-dd-yyyy)

Wie ich das beheben kann, dass, zu akzeptieren, meine Datum-format?

InformationsquelleAutor der Frage Paul | 2012-01-18

Schreibe einen Kommentar