public void SetUp()
        {
            var configuration = new DynamoDbEntityConfiguration();

            configuration.AddFieldConfiguration(new FieldConfiguration("FooName", typeof(string)));

            configuration.AddFieldConfiguration(new FieldConfiguration("Bars", typeof(IEnumerable <Bar>), true, new List <FieldConfiguration> {
                new FieldConfiguration("BarName", typeof(string))
            }, accessStrategy: AccessStrategy.CamelCaseUnderscoreName));

            Mapper = new DynamoDbMapper <Foo>(configuration);

            _documentFoo            = new Document();
            _documentFoo["FooName"] = "TheFooName";

            var documentBar1 = new Document();

            documentBar1["BarName"] = "BarName1";

            var documentBar2 = new Document();

            documentBar2["BarName"] = "BarName2";

            _documentFoo["Bars"] = new List <Document> {
                documentBar1, documentBar2
            };
        }
コード例 #2
0
        protected FieldConfiguration Map <TType>(Expression <Func <TEntity, TType> > propertyExpression, IPropertyConverter propertyConverter = null)
        {
            var propertyInfo = GetPropertyInfo(propertyExpression);

            if (propertyInfo != null)
            {
                var fieldConfiguration = new FieldConfiguration(propertyInfo.Name, propertyInfo.PropertyType, false, propertyConverter: propertyConverter);
                _dynamoDbEntityConfiguration.AddFieldConfiguration(fieldConfiguration);
                return(fieldConfiguration);
            }

            return(null); //TODO: Throws exception
        }
コード例 #3
0
        public void AddFieldConfiguration_MappingMoreThanOnceTheSameField_ShouldThrowException()
        {
            var dynamoDbEntityConfiguration = new DynamoDbEntityConfiguration();

            dynamoDbEntityConfiguration.AddFieldConfiguration(new FieldConfiguration("FooName", typeof(string)));

            Assert.That(
                () =>
                dynamoDbEntityConfiguration.AddFieldConfiguration(new FieldConfiguration("FooName", typeof(string))),
                Throws.Exception.TypeOf <FluentDynamoDbMappingException>()
                .With
                .Message
                .EqualTo("Property FooName has already been mapped"));
        }
        public virtual void SetUp()
        {
            var configuration = new DynamoDbEntityConfiguration();

            configuration.AddFieldConfiguration(new FieldConfiguration("FooName", typeof(string)));

            configuration.AddFieldConfiguration(new FieldConfiguration("Bars", typeof(IEnumerable <Bar>), true, new List <FieldConfiguration> {
                new FieldConfiguration("BarName", typeof(string))
            }, accessStrategy: AccessStrategy.CamelCaseUnderscoreName));

            configuration.AddFieldConfiguration(new FieldConfiguration("Other", typeof(Other), true, new List <FieldConfiguration> {
                new FieldConfiguration("OtherName", typeof(string))
            }));

            Mapper = new DynamoDbMapper <Foo>(configuration);
        }
コード例 #5
0
        public void SetUp()
        {
            var configuration = new DynamoDbEntityConfiguration();

            configuration.AddFieldConfiguration(new FieldConfiguration("Title", typeof(string)));

            _mapper = new DynamoDbMapper <Foo>(configuration);
        }
コード例 #6
0
        public virtual void SetUp()
        {
            var configuration = new DynamoDbEntityConfiguration();

            configuration.AddFieldConfiguration(new FieldConfiguration("FooName", typeof(string)));
            configuration.AddFieldConfiguration(new FieldConfiguration("Bar", typeof(Bar), true,
                                                                       new List <FieldConfiguration>
            {
                new FieldConfiguration("BarName", typeof(string)),
                new FieldConfiguration("Other", typeof(Other), true, new List <FieldConfiguration>
                {
                    new FieldConfiguration("OtherName", typeof(string))
                })
            }));

            Mapper = new DynamoDbMapper <Foo>(configuration);
        }
コード例 #7
0
        public void AddFieldConfiguration_GivenANewDynamoDbEntityConfiguration_FieldsCountShouldBe1()
        {
            var dynamoDbEntityConfiguration = new DynamoDbEntityConfiguration();

            dynamoDbEntityConfiguration.AddFieldConfiguration(new FieldConfiguration("Name", "".GetType()));

            Assert.AreEqual(1, dynamoDbEntityConfiguration.Fields.Count());
        }
コード例 #8
0
        public void SetUp()
        {
            var configuration = new DynamoDbEntityConfiguration();

            configuration.AddFieldConfiguration(new FieldConfiguration("Gender", typeof(Gender),
                                                                       propertyConverter: new DynamoDbConverterEnum <Gender>()));

            _mapper = new DynamoDbMapper <Foo>(configuration);
        }