Пример #1
0
        public static string Concat(this IList <string> values, string delimiter, StringEncodeHandler encodeValue)
        {
            if (values.Count == 0)
            {
                return(string.Empty);
            }

            StringBuilder sb = new StringBuilder(encodeValue(values[0]));

            for (int i = 1; i < values.Count; i++)
            {
                sb.Append(delimiter).Append(encodeValue(values[i]));
            }
            return(sb.ToString());
        }
Пример #2
0
        public static string FriendlyConcat <T>(this IEnumerable <T> values, StringEncodeHandler <T> encodeValue)
        {
            var sb  = new StringBuilder();
            var len = values.Count();
            int i   = 0;

            foreach (var v in values)
            {
                if (i > 0 && i < len - 1)
                {
                    sb.Append(", ");
                }
                else if (i == len - 1 && len > 1)
                {
                    sb.Append(" and ");
                }
                sb.Append(encodeValue(v));
                i++;
            }
            return(sb.ToString());
        }
Пример #3
0
        public static string Concat <T>(this IEnumerable <T> values, string delimiter, StringEncodeHandler <T> encodeValue)
        {
            StringBuilder sb = new StringBuilder();
            int           c  = 0;

            if (values == null)
            {
                values = new T[0];
            }
            foreach (T k in values)
            {
                if (c++ > 0)
                {
                    sb.Append(delimiter);
                }
                sb.Append(encodeValue(k));
            }
            return(sb.ToString());
        }
Пример #4
0
 public static string Concat <T>(this IEnumerable <T> values, StringEncodeHandler <T> encodeValue)
 {
     return(values.Concat("", encodeValue));
 }