private InstallModel PrepareCountryList(InstallModel model) { if (!model.InstallRegionalResources) { return(model); } var browserCulture = _locService.GetBrowserCulture(); var countries = new List <SelectListItem> { //This item was added in case it was not possible to automatically determine the country by culture new SelectListItem { Value = string.Empty, Text = _locService.GetResource("CountrySelect") } }; countries.AddRange(from country in ISO3166.GetCollection() from localization in ISO3166.GetLocalizationInfo(country.Alpha2) let lang = ISO3166.GetLocalizationInfo(country.Alpha2).Count() > 1 ? $" [{localization.Language} language]" : string.Empty let item = new SelectListItem { Value = $"{country.Alpha2}-{localization.Culture}", Text = $"{country.Name}{lang}", Selected = (localization.Culture == browserCulture) && browserCulture[^ 2..] == country.Alpha2 } select item); model.AvailableCountries.AddRange(countries); return(model); }