public static string GetEnumValuePrefix(IEnumerable <Xml.EnumEntry> xEnumEntries, String xEnumName, EnumValuePrefixRemovalStrategy strategy) { switch (strategy) { case EnumValuePrefixRemovalStrategy.None: return(null); case EnumValuePrefixRemovalStrategy.RemoveEnumName: if (!String.IsNullOrWhiteSpace(xEnumName)) { return(xEnumName); } return(null); case EnumValuePrefixRemovalStrategy.RemoveLongestCommonString: if (xEnumEntries.Count() > 1) { IEnumerable <String> xEnumValues = xEnumEntries.Select(e => e.Name); string longestStartSubstring = StringHelper.GetLongestCommonStartSubstring(xEnumValues); if (String.IsNullOrWhiteSpace(longestStartSubstring)) { return(null); } return(longestStartSubstring); } if (!String.IsNullOrWhiteSpace(xEnumName)) { return(xEnumName); } return(null); } return(null); }
public DefaultTransformation(EnumValuePrefixRemovalStrategy strategy) { _strategy = strategy; }