Esempio n. 1
0
        public static Type_DTO MapToSerializationModel(this TypeBaseDTO metadata)
        {
            if (metadata == null)
            {
                return(null);
            }
            if (KnowTypes.ContainsKey(metadata.TypeName))
            {
                return(KnowTypes[metadata.TypeName]);
            }
            Type_DTO type_ = new Type_DTO
            {
                TypeName              = metadata.TypeName,
                NamespaceName         = metadata.NamespaceName,
                BaseType              = metadata.BaseType.MapToSerializationModel(),
                GenericArguments      = CollectionMapToObject(metadata.GenericArguments, i => i.MapToSerializationModel()),
                Modifiers             = metadata.Modifiers.MapToSerializationModel(),
                TypeKind1             = metadata.TypeKind1.MapToSerializationModel(),
                ImplementedInterfaces = CollectionMapToObject(metadata.ImplementedInterfaces, i => i.MapToSerializationModel()),
                NestedTypes           = CollectionMapToObject(metadata.NestedTypes, i => i.MapToSerializationModel()),
                Properties            = CollectionMapToObject(metadata.Properties, i => i.MapToSerializationModel()),
                DeclaringType         = metadata.DeclaringType.MapToSerializationModel(),
                Methods      = CollectionMapToObject(metadata.Methods, i => i.MapToSerializationModel()),
                Constructors = CollectionMapToObject(metadata.Constructors, i => i.MapToSerializationModel()),
                Fields       = CollectionMapToObject(metadata.Fields, i => i.MapToSerializationModel())
            };

            KnowTypes.Add(metadata.TypeName, type_);
            return(type_);
        }
Esempio n. 2
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);
        }
Esempio n. 3
0
        public static TypeMetadata MapToObject(this TypeBaseDTO metadata)
        {
            if (metadata == null)
            {
                return(null);
            }

            return(new TypeMetadata
            {
                TypeName = metadata.TypeName,
                NamespaceName = metadata.NamespaceName,
                BaseType = metadata.BaseType.MapToObject(),
                GenericArguments = CollectionMapToObject(metadata.GenericArguments, i => i.MapToObject()),
                Modifiers = metadata.Modifiers.MapToObject(),
                TypeKind1 = metadata.TypeKind1.MapToObject(),
                ImplementedInterfaces = CollectionMapToObject(metadata.ImplementedInterfaces, i => i.MapToObject()),
                NestedTypes = CollectionMapToObject(metadata.NestedTypes, i => i.MapToObject()),
                Properties = CollectionMapToObject(metadata.Properties, i => i.MapToObject()),
                DeclaringType = metadata.DeclaringType.MapToObject(),
                Methods = CollectionMapToObject(metadata.Methods, i => i.MapToObject()),
                Constructors = CollectionMapToObject(metadata.Constructors, i => i.MapToObject()),
                Fields = CollectionMapToObject(metadata.Fields, i => i.MapToObject())
            });
        }