Пример #1
0
        public static TypeDataBaseDTO MapToDatabaseModel(this TypeBaseDTO metadata)
        {
            if (metadata == null)
            {
                return(null);
            }
            if (types.ContainsKey(metadata.TypeName))
            {
                return(types[metadata.TypeName]);
            }

            if (!types.ContainsKey(metadata.TypeName))
            {
                types.Add(metadata.TypeName, null);
            }
            //Console.WriteLine(metadata.TypeName + "\n");
            TypeDataBaseDTO typeDataBaseDTO = new TypeDataBaseDTO
            {
                TypeName              = metadata.TypeName,
                NamespaceName         = metadata.NamespaceName,
                BaseType              = metadata.BaseType.MapToDatabaseModel(),
                GenericArguments      = CollectionMapToObject(metadata.GenericArguments, i => i.MapToDatabaseModel()),
                Modifiers             = metadata.Modifiers.MapToDatabaseModel(),
                TypeKind1             = metadata.TypeKind1.MapToDatabaseModel(),
                ImplementedInterfaces = CollectionMapToObject(metadata.ImplementedInterfaces, i => i.MapToDatabaseModel()),
                NestedTypes           = CollectionMapToObject(metadata.NestedTypes, i => i.MapToDatabaseModel()),
                DeclaringType         = metadata.DeclaringType.MapToDatabaseModel(),
                Constructors          = CollectionMapToObject(metadata.Constructors, i => i.MapToDatabaseModel()),
            };

            if (types.ContainsKey(metadata.TypeName))
            {
                types[metadata.TypeName] = typeDataBaseDTO;
            }
            if (types.ContainsKey(metadata.TypeName))
            {
                return(types[metadata.TypeName]);
            }

            return(typeDataBaseDTO);
        }
Пример #2
0
 public static TypeBaseDTO ToBaseDTO(this TypeDataBaseDTO metadata)
 {
     if (metadata == null)
     {
         return(null);
     }
     return(new TypeBaseDTO
     {
         TypeName = metadata.TypeName,
         NamespaceName = metadata.NamespaceName,
         BaseType = metadata.BaseType.ToBaseDTO(),
         GenericArguments = CollectionToBaseDTO(metadata.GenericArguments, i => i.ToBaseDTO()),
         Modifiers = metadata.Modifiers.ToBaseDTO(),
         TypeKind1 = metadata.TypeKind1.ToBaseDTO(),
         ImplementedInterfaces = CollectionToBaseDTO(metadata.ImplementedInterfaces, i => i.ToBaseDTO()),
         NestedTypes = CollectionToBaseDTO(metadata.NestedTypes, i => i.ToBaseDTO()),
         Properties = CollectionToBaseDTO(metadata.Properties, i => i.ToBaseDTO()),
         DeclaringType = metadata.DeclaringType.ToBaseDTO(),
         Methods = CollectionToBaseDTO(metadata.Methods, i => i.ToBaseDTO()),
         Constructors = CollectionToBaseDTO(metadata.Constructors, i => i.ToBaseDTO()),
         Fields = CollectionToBaseDTO(metadata.Fields, i => i.ToBaseDTO())
     });
 }