Example #1
0
        internal void Append(string prefix, EdmType type)
        {
            if (null != type)
            {
                Append(prefix, type.NamespaceName);
                Append(".", type.Name);

                if (type.BuiltInTypeKind
                    == BuiltInTypeKind.RowType)
                {
                    if (_spanIndex != null)
                    {
                        Append("<<");
                        var spanMap = _spanIndex.GetSpanMap((RowType)type);
                        if (null != spanMap)
                        {
                            var separator = string.Empty;
                            foreach (var pair in spanMap)
                            {
                                Append(separator);
                                AppendValue("C", pair.Key);
                                Append(":", pair.Value.DeclaringType);
                                Append(".", pair.Value.Name);
                                separator = ",";
                            }
                        }
                        Append(">>");
                    }
                }
            }
        }