public static ClimbingRound GetByLocalizedValue(string roundName, out int routeNumber, CultureInfo language = null) { if (string.IsNullOrEmpty(roundName)) { throw new ArgumentNullException("roundName"); } var qualiName = CommonTranslations.ResourceManager.GetString("Qualification", language); if (roundName.Contains(qualiName)) { ClimbingRound result = ClimbingRound.Qualification; roundName = roundName.Replace(qualiName, string.Empty).Trim(); if (int.TryParse(roundName, out routeNumber)) { result = result | ClimbingRound.Route; } else { routeNumber = 0; } return(result); } routeNumber = 0; return(Extensions.StringExtensions.GetEnumByStringValue(roundName, ClimbingRound.Final, language)); }
public static String GetLocalizedValue(this ClimbingRound round, int routeNumber = 0, CultureInfo language = null) { if ((round & ClimbingRound.Route) == ClimbingRound.Route) { return(String.Format("{0} {1} {2}", (round & (~ClimbingRound.Route)).EnumFriendlyValue(language), ClimbingRound.Route.EnumFriendlyValue(language), routeNumber)); } else { return(round.EnumFriendlyValue(language)); } }