Esempio n. 1
0
        private CodeNamespace ClassMapToCodeNamespace(IClassMap classMap)
        {
            CodeNamespace       domainNamespace = new CodeNamespace(classMap.GetFullNamespace());
            CodeTypeDeclaration classDecl       = new CodeTypeDeclaration(classMap.GetName());

            if (classMap.ClassType == ClassType.Default || classMap.ClassType == ClassType.Class)
            {
                classDecl.IsClass = true;

                IClassMap super = classMap.GetInheritedClassMap();

                if (super != null)
                {
                    CodeTypeReference superDecl = new CodeTypeReference(super.GetFullName());
                    classDecl.BaseTypes.Add(superDecl);
                }

                foreach (IPropertyMap propertyMap in classMap.PropertyMaps)
                {
                    classDecl.Members.Add(PropertyMapToCodeMemberField(propertyMap));
                    classDecl.Members.Add(PropertyMapToCodeMemberProperty(propertyMap));
                }
            }
            else if (classMap.ClassType == ClassType.Enum)
            {
                classDecl.IsEnum = true;

                foreach (IEnumValueMap enumValueMap in classMap.GetEnumValueMaps())
                {
                    classDecl.Members.Add(EnumValueMapToCodeMemberField(enumValueMap));
                }
            }

            domainNamespace.Types.Add(classDecl);

            return(domainNamespace);
        }
        private CodeNamespace ClassMapToCodeNamespace(IClassMap classMap)
        {
            CodeNamespace domainNamespace = new CodeNamespace(classMap.GetFullNamespace()) ;
            CodeTypeDeclaration classDecl = new CodeTypeDeclaration(classMap.GetName()) ;

            if (classMap.ClassType == ClassType.Default || classMap.ClassType == ClassType.Class)
            {
                classDecl.IsClass = true;

                IClassMap super = classMap.GetInheritedClassMap();

                if (super != null)
                {
                    CodeTypeReference superDecl = new CodeTypeReference(super.GetFullName()) ;
                    classDecl.BaseTypes.Add(superDecl);
                }

                foreach (IPropertyMap propertyMap in classMap.PropertyMaps)
                {
                    classDecl.Members.Add(PropertyMapToCodeMemberField(propertyMap));
                    classDecl.Members.Add(PropertyMapToCodeMemberProperty(propertyMap));
                }

            }
            else if (classMap.ClassType == ClassType.Enum)
            {
                classDecl.IsEnum = true;

                foreach (IEnumValueMap enumValueMap in classMap.GetEnumValueMaps())
                {
                    classDecl.Members.Add(EnumValueMapToCodeMemberField(enumValueMap));
                }
            }

            domainNamespace.Types.Add(classDecl);

            return domainNamespace;
        }