Esempio n. 1
0
        public TypeDetails(Type type, ProfileMap config)
        {
            Type = type;
            var membersToMap          = MembersToMap(config.ShouldMapProperty, config.ShouldMapField);
            var publicReadableMembers = GetAllPublicReadableMembers(membersToMap);
            var publicWritableMembers = GetAllPublicWritableMembers(membersToMap);

            PublicReadAccessors         = BuildPublicReadAccessors(publicReadableMembers);
            PublicWriteAccessors        = BuildPublicAccessors(publicWritableMembers);
            PublicNoArgMethods          = BuildPublicNoArgMethods();
            Constructors                = GetAllConstructors(config.ShouldUseConstructor);
            PublicNoArgExtensionMethods = BuildPublicNoArgExtensionMethods(config.SourceExtensionMethods);
            AllMembers             = PublicReadAccessors.Concat(PublicNoArgMethods).Concat(PublicNoArgExtensionMethods).ToList();
            DestinationMemberNames = AllMembers.Select(mi => new DestinationMemberName {
                Member = mi, Possibles = PossibleNames(mi.Name, config.Prefixes, config.Postfixes).ToArray()
            });
        }