//////////////////////////////////////////////////////////////////////// // // RegionInfo Constructors // //////////////////////////////////////////////////////////////////////// public RegionInfo(String name) { if (name == null) { throw new ArgumentNullException("name"); } if (name.Length == 0) { throw new ArgumentException(Environment.GetResourceString("Argument_InvalidRegionName", name), "name"); } this.m_name = name.ToUpper(CultureInfo.InvariantCulture); m_cultureId = 0; // // First try it as an entire culture. We must have user override as true here so // that we can pick up custom cultures *before* built-in ones (if they want to // prefer built-in cultures they will pass "us" instead of "en-US"). // this.m_cultureTableRecord = CultureTableRecord.GetCultureTableRecordForRegion(name, true); if (this.m_cultureTableRecord.IsNeutralCulture) { // Not supposed to be neutral throw new ArgumentException(Environment.GetResourceString("Argument_InvalidNeutralRegionName", name), "name"); } }
private void OnDeserialized(StreamingContext ctx) { if (m_name == null) { BCLDebug.Assert(m_dataItem >= 0, "[RegionInfo.OnDeserialized] null name and invalid dataItem"); m_cultureTableRecord = CultureTableRecord.GetCultureTableRecord(CultureTableRecord.IdFromEverettRegionInfoDataItem(m_dataItem), true); m_name = m_cultureTableRecord.SREGIONNAME; } else { if (m_cultureId != 0) { m_cultureTableRecord = CultureTableRecord.GetCultureTableRecord(m_cultureId, true); } else { m_cultureTableRecord = CultureTableRecord.GetCultureTableRecordForRegion(m_name, true); } } }