Holen Sie sich RegionInfo von Land Namen?
Ich möchte in der Lage sein, um RegionInfo
folgt:
new RegionInfo("United Kingdom");
aber dies wirft eine Ausnahme und sagt, dass es nicht anerkannt.
Diese Seite auf RegionInfo sagt, dass eine Ausnahme geworfen wird, wenn 'name ist kein Gültiger Land/region-name" ein.
Aber dieses Seite gibt eine Liste von vordefinierten Regionen, die durch die Klasse, und enthält United Kingdom
, also warum nicht erstellen eine neue RegionInfo
Land mit Namen zu arbeiten?
Bitte, Lesen Sie die Dokumentation: Die RegionInfo name ist der zwei-Buchstaben-codes nach ISO 3166 für Land/region.
InformationsquelleAutor DevDave | 2013-01-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie möchten, zu bekommen
RegionInfo
durch den Namen des Landes, Sie konnten sich einIEnumerable<RegionInfo>
werden und dann der filter auf der Grundlage derEnglishName
wie oben. Dies gibt Ihnen die Möglichkeit zum Auffüllen Dinge wie comboboxes zu.EnglishName
ist "Englisch (Großbritannien)" ; -), So möchten Sie vielleicht zu verwendenFirstOrdefault(r => r.EnglishName.Contains(name))
Es wird noch
null
aber jetzt ohne Ausnahme. +1 da ehContains
statt==
wäre zu großzügig.Es funktioniert für mich, EnglishName erscheint wie "Vereinigtes Königreich"
Ich dachte, es würde auch funktionieren, die englische Bezeichnung für
GB
auf dieMSDN
ist einfachUnited Kingdom
InformationsquelleAutor LukeHennerley
Vom MSDN;
UNITED KINGDOM
sieht ok auf Country names and code elements auf der ISO-website.Versuchen mit;
"en-GB"
statt nur"GB"
.InformationsquelleAutor Soner Gönül
Gleichen Seite, die Sie verlinkt auch sagt:
Werden die codes auf der Seite, und
GB
zu sein scheint, der 2-letter-code für das Vereinigte Königreich (es ist im code, um schwierig zu sein, die sich auf die Suche!). Also versuchen Sie dies:Oder wenn Sie mit .NET 2.0+, ist es empfehlenswert, Sie nutzen die volle Kultur name:
"en-GB"
statt nur"GB"
.Toll. Die anderen Möglichkeiten mit GB: Walisisch (Vereinigtes Königreich)
"cy-GB"
und schottisch-Gälisch (Vereinigtes Königreich)"gd-GB"
.InformationsquelleAutor Bridge
Wenn ich navigieren Sie zu dem Konstruktor der Zusammenfassung sehe ich in Visual Studio sagt:
Die ganze Kultur würde der name 'en-GB'.
Oder verwenden Sie 'GB'
"en-GB"
, statt nur"GB"
. Wir wissen nicht, welche version des Frameworks wird von der Original-Poster, aber er sollte sicher gehen mitnew RegionInfo("en-GB")
.InformationsquelleAutor Rob P.
Blick auf die MSDN-Seite:
A string containing one of the two-letter codes defined in ISO 3166 for country/region.
Müssen Sie den ISO 3166-code für das Vereinigte Königreich, nicht der name des Landes.
Hier ist die code, den Sie benötigen.
InformationsquelleAutor Matt Burland
Hinweis: dieser Kommentar von Metadaten für die parameter
name
so erklärt sich die Veränderung aus .NET Framework 2.0 auf:InformationsquelleAutor Barry Kaye