public virtual void SetEntryDisplayNames(LanguageSwitchEntryViewModel entry, CultureInfo entryCulture) { var displayName = (entryCulture.CultureTypes & CultureTypes.SpecificCultures) != 0 ? entryCulture.Parent.NativeName : entryCulture.NativeName; entry.DisplayName = CultureInfo.CurrentCulture.TextInfo.ToTitleCase(displayName); entry.ShortDisplayName = entryCulture.TwoLetterISOLanguageName; entry.CultureName = entryCulture.Name; }
protected virtual LanguageSwitchEntryViewModel CreateEntry( Func <CultureInfo, string> urlBuilder, CultureInfo entryCulture, CultureInfo currentCulture) { var url = urlBuilder.Invoke(entryCulture); var entry = new LanguageSwitchEntryViewModel { IsCurrent = entryCulture.Equals(currentCulture), Url = url }; SetEntryDisplayNames(entry, entryCulture); return(entry); }