System.Xml.Schema.XmlSchemaDatatype.ConcatenatedToString C# (CSharp) Method

ConcatenatedToString() static private method

static private ConcatenatedToString ( object value ) : string
value object
return string
        internal static string ConcatenatedToString(object value) {
            Type t = value.GetType();
            string stringValue = string.Empty;
            if (t == typeof(IEnumerable) && t != typeof(System.String)) {
                StringBuilder bldr = new StringBuilder();
                IEnumerator enumerator = (value as IEnumerable).GetEnumerator();
                if (enumerator.MoveNext()) {
                    bldr.Append("{");
                    Object cur = enumerator.Current;
                    if (cur is IFormattable) {
                        bldr.Append( ((IFormattable)cur).ToString("", CultureInfo.InvariantCulture) );
                    }
                    else {
                        bldr.Append(cur.ToString());
                    }
                    while(enumerator.MoveNext()) {
                        bldr.Append(" , ");
                        cur = enumerator.Current;
                        if (cur is IFormattable) {
                            bldr.Append( ((IFormattable)cur).ToString("", CultureInfo.InvariantCulture) );
                        }
                        else {
                            bldr.Append(cur.ToString());
                        }
                    }
                    bldr.Append("}");
                    stringValue = bldr.ToString();
                }
            }
            else if (value is IFormattable) {
                stringValue = ((IFormattable)value).ToString("", CultureInfo.InvariantCulture);
            }
            else {
                stringValue = value.ToString();
            }
            return stringValue;
        }