コード例 #1
0
        public void OnePropertyStrongPropertyTests()
        {
            DtoInfo <OneProperty>          info     = DtoInfo.GetInfo <OneProperty>();
            DtoProperty <OneProperty, int> property = info.GetProperty <int>("Integer");

            info.GetProperty(x => x.Integer).Should().Be(property);
            property.Name.Should().Be("Integer");
            property.ValueType.Should().Be(typeof(int));
            property.IsReadOnly.Should().BeFalse();
            ((PropertyInfo)property.MemberInfo).GetMethod !.Name.Should().Be("get_Integer");

            OneProperty dto = new() { Integer = 42 };

            property.GetValue(dto).Should().Be(dto.Integer);
            property.SetValue(dto, 24);
            dto.Integer.Should().Be(24);
        }
コード例 #2
0
        public void OneFieldStrongFieldTests()
        {
            DtoInfo <OneField>          info     = DtoInfo.GetInfo <OneField>();
            DtoProperty <OneField, int> property = info.GetProperty <int>("Integer");

            info.GetProperty(x => x.Integer).Should().Be(property);
            property.Name.Should().Be("Integer");
            property.ValueType.Should().Be(typeof(int));
            property.IsReadOnly.Should().BeFalse();
            ((FieldInfo)property.MemberInfo).Name.Should().Be("Integer");

            OneField dto = new() { Integer = 42 };

            property.GetValue(dto).Should().Be(dto.Integer);
            property.SetValue(dto, 24);
            dto.Integer.Should().Be(24);
        }