Grüße,
Ich habe mich gefragt, warum es in C # keine voreingestellte Enum für Kulturen gibt? Da sich die Kulturen nie ändern und immer wie "nl-NL, en-GB, en-US" sind, warum nicht ein enum machen, damit die Dinge einfach ein bisschen leichter werden?
[Bearbeiten]
Wie gesagt, ändern sich die Kulturen ... aber nicht alle. Warum nicht einen enum / class type erstellen, der alle Kulturen enthält und die Möglichkeit gibt, sie hinzuzufügen / zu ändern?
"Da sich die Kulturen nie verändern"
Nicht wahr? Dieser Artikel (Microsoft .NET Framework 4: Was ist neu? in der Globalisierung) stimmt nicht zu. Allein in den letzten 5 Jahren hat sich in der serbischen Region viel verändert, was zu neuen Kulturen geführt hat.
In der realen Welt ändern sich die Informationen zur Globalisierung aufgrund kultureller Entwicklungen in den lokalen Märkten aufgrund neuer Standards, die die kultursensiblen Informationen häufig aktualisieren, oder weil Microsoft genauere Informationen über verschiedene Märkte findet oder sich in mehr Märkte ausbreitet .
Microsoft .NET Framework 4 unterstützt mindestens 354 Kulturen im Vergleich zu mindestens 203 Kulturen in der vorherigen Version. Viele dieser Kulturen sind Neutrale, die hinzugefügt wurden, um die Stammkette zu der Wurzel-neutralen Kultur zu vervollständigen.
Zum Beispiel wurden den bereits existierenden Kulturen Inuktitut (Syllabics, Kanada) und Inuktitut (Latein, Kanada) drei Inuktitut-Neutrale hinzugefügt.
Ich denke auch, dass ein Enum selbst keinen Sinn ergibt. Eine CultureInfo ist viel mehr als nur ein Name, und eine Suche bietet mehr Flexibilität und Unabhängigkeit von politischen Veränderungen, von denen es viel mehr gibt, als wir normalerweise realisieren.
Aufzählungen werden zur Kompilierzeit festgelegt.
Aber die Menge der Kulturen variiert zur Laufzeit:
Sie ändern sich, wenn auch langsam. In jedem Fall sind sie älter als C #, so dass sie an dieser Stelle zu einem Enum werden würden. Zum Beispiel, POSIX-Systemaufrufe zu einem Enum zu machen, was ich in Postforth gemacht habe, aber ich wusste, dass es falsch war, als ich es tat.
Zusätzlich zu diesen Änderungen, wie von anderen vorgeschlagen, können Sie Ihre eigenen Kulturen erstellen und sie würden auffallend in der Enum sein, da Sie keine Gegenstände hinzufügen können.
Tags und Links c# cultureinfo