Пример #1
0
        PropertyMapping IPropertyMappingProvider.GetPropertyMapping()
        {
            var mapping = new PropertyMapping(attributes.Clone())
            {
                ContainingEntityType = parentType,
                Member = member
            };

            if (columns.Count() == 0 && !mapping.IsSpecified("Formula"))
            {
                var columnMapping = new ColumnMapping(columnAttributes.Clone());
                columnMapping.Set(x => x.Name, Layer.Defaults, member.Name);
                mapping.AddColumn(Layer.Defaults, columnMapping);
            }

            foreach (var column in columns)
            {
                mapping.AddColumn(Layer.UserSupplied, column);
            }

            foreach (var column in mapping.Columns)
            {
                if (member.PropertyType.IsNullable() && member.PropertyType.IsEnum())
                {
                    column.Set(x => x.NotNull, Layer.Defaults, false);
                }

                column.MergeAttributes(columnAttributes);
            }

            mapping.Set(x => x.Name, Layer.Defaults, mapping.Member.Name);
            mapping.Set(x => x.Type, Layer.Defaults, GetDefaultType());

            return(mapping);
        }
Пример #2
0
        public void Column(string columnName)
        {
            var originalColumn = mapping.Columns.FirstOrDefault();
            var column         = originalColumn == null ? new ColumnMapping() : originalColumn.Clone();

            column.Set(x => x.Name, layer, columnName);

            mapping.AddColumn(Layer.Conventions, column);
        }
        public void Column(string columnName)
        {
            if (mapping.Columns.UserDefined.Count() > 0)
            {
                return;
            }

            var originalColumn = mapping.Columns.FirstOrDefault();
            var column         = originalColumn == null ? new ColumnMapping() : originalColumn.Clone();

            column.Name = columnName;

            mapping.ClearColumns();
            mapping.AddColumn(column);
        }
        protected PropertyMapping property_with_column(string column)
        {
            var property = new PropertyMapping();

            property.AddColumn(Layer.Defaults, new ColumnMapping("propertyColumn"));
            return(property);
        }
Пример #5
0
        public void ShouldWriteColumns()
        {
            var mapping = new PropertyMapping();

            mapping.AddColumn(Layer.Defaults, new ColumnMapping("Column1"));

            writer.VerifyXml(mapping)
            .Element("column").Exists();
        }
Пример #6
0
        public void ShouldWriteColumns()
        {
            var mapping = new PropertyMapping();

            mapping.AddColumn(new ColumnMapping {
                Name = "Column1"
            });

            writer.VerifyXml(mapping)
            .Element("column").Exists();
        }
Пример #7
0
        static PropertyMapping GetPropertyMapping <T>(Expression <Func <T, object> > propertyExpression)
        {
            var propertyMapping = new PropertyMapping
            {
                Member = ReflectionHelper.GetMember <T>(propertyExpression),
                ContainingEntityType = typeof(T)
            };

            propertyMapping.AddColumn(0, new ColumnMapping());
            return(propertyMapping);
        }
        public void CollectionContainsWithLambdaShouldBeFalseWhenNoItemsMatching()
        {
            acceptance
            .Expect(x => x.Columns.Contains(c => c.Name == "boo"));

            var mapping = new PropertyMapping();

            mapping.AddColumn(Layer.Defaults, new ColumnMapping("Column1"));

            acceptance
            .Matches(new PropertyInspector(mapping))
            .ShouldBeFalse();
        }
        public void CollectionIsNotEmptyShouldBeTrueWithItemsWhenUsingExpression()
        {
            acceptance
            .Expect(x => x.Columns.IsNotEmpty());

            var mapping = new PropertyMapping();

            mapping.AddColumn(Layer.Defaults, new ColumnMapping("Column1"));

            acceptance
            .Matches(new PropertyInspector(mapping))
            .ShouldBeTrue();
        }
        public void CollectionContainsWithStringShouldBeTrueWhenItemsMatching()
        {
            acceptance
            .Expect(x => x.Columns.Contains("Column1"));

            var mapping = new PropertyMapping();

            mapping.AddColumn(Layer.Defaults, new ColumnMapping("Column1"));

            acceptance
            .Matches(new PropertyInspector(mapping))
            .ShouldBeTrue();
        }
        public void CollectionContainsWithLambdaShouldBeTrueWhenItemsMatching()
        {
            acceptance
            .Expect(x => x.Columns.Contains(c => c.Name == "Column1"));

            var mapping = new PropertyMapping();

            mapping.AddColumn(new ColumnMapping {
                Name = "Column1"
            });

            acceptance
            .Matches(new PropertyInspector(mapping))
            .ShouldBeTrue();
        }
        public void CollectionContainsWithStringShouldBeFalseWhenNoItemsMatching()
        {
            acceptance
            .Expect(x => x.Columns.Contains("boo"));

            var mapping = new PropertyMapping();

            mapping.AddColumn(new ColumnMapping {
                Name = "Column1"
            });

            acceptance
            .Matches(new PropertyInspector(mapping))
            .ShouldBeFalse();
        }
Пример #13
0
        protected virtual NaturalIdPart <T> Property(Member member, string columnName)
        {
            var key = new PropertyMapping();

            key.Set(x => x.Name, Layer.Defaults, member.Name);
            key.Set(x => x.Type, Layer.Defaults, new TypeReference(member.PropertyType));
            var columnMapping = new ColumnMapping();

            columnMapping.Set(x => x.Name, Layer.Defaults, columnName);
            key.AddColumn(Layer.UserSupplied, columnMapping);

            properties.Add(key);

            return(this);
        }
        public void CollectionIsEmptyShouldBeFalseWithItemsWhenUsingExpression()
        {
            acceptance
            .Expect(x => x.Columns.IsEmpty());

            var mapping = new PropertyMapping();

            mapping.AddColumn(new ColumnMapping {
                Name = "Column1"
            });

            acceptance
            .Matches(new PropertyInspector(mapping))
            .ShouldBeFalse();
        }
Пример #15
0
        protected virtual NaturalIdPart <T> Property(Member member, string columnName)
        {
            var key = new PropertyMapping
            {
                Name = member.Name,
                Type = new TypeReference(member.PropertyType)
            };

            key.AddColumn(new ColumnMapping {
                Name = columnName
            });

            properties.Add(key);

            return(this);
        }
Пример #16
0
        PropertyMapping IPropertyMappingProvider.GetPropertyMapping()
        {
            var mapping = new PropertyMapping(attributes.CloneInner())
            {
                ContainingEntityType = parentType,
                Member = property
            };

            if (columns.Count() == 0 && !mapping.IsSpecified("Formula"))
            {
                mapping.AddDefaultColumn(new ColumnMapping(columnAttributes.CloneInner())
                {
                    Name = property.Name
                });
            }

            foreach (var column in columns)
            {
                mapping.AddColumn(column);
            }

            foreach (var column in mapping.Columns)
            {
                if (!column.IsSpecified("NotNull") && property.PropertyType.IsNullable() && property.PropertyType.IsEnum())
                {
                    column.SetDefaultValue(x => x.NotNull, false);
                }

                column.MergeAttributes(columnAttributes);
            }

            if (!mapping.IsSpecified("Name"))
            {
                mapping.Name = mapping.Member.Name;
            }

            if (!mapping.IsSpecified("Type"))
            {
                mapping.SetDefaultValue("Type", GetDefaultType());
            }

            return(mapping);
        }
Пример #17
0
        private PropertyMapping GetPropertyMapping(Type type, Member property)
        {
            var mapping = new PropertyMapping
            {
                ContainingEntityType = type,
                Member = property
            };

            var columnMapping = new ColumnMapping();

            columnMapping.Set(x => x.Name, Layer.Defaults, property.Name);
            mapping.AddColumn(Layer.Defaults, columnMapping);

            mapping.Set(x => x.Name, Layer.Defaults, mapping.Member.Name);
            mapping.Set(x => x.Type, Layer.Defaults, GetDefaultType(property));

            SetDefaultAccess(property, mapping);

            return(mapping);
        }
Пример #18
0
 public void ColumnCollectionHasSameCountAsMapping()
 {
     mapping.AddColumn(new ColumnMapping());
     inspector.Columns.Count().ShouldEqual(1);
 }