Ncqrs.Eventing.Storage.PropertyBagConverter.Convert C# (CSharp) Метод

Convert() публичный Метод

Converts a command or event into a property bag.
public Convert ( object obj ) : PropertyBag
obj object
Результат PropertyBag
        public PropertyBag Convert(object obj)
        {
            Type type = obj.GetType();
            var document = new PropertyBag(type);

            foreach (PropertyInfo propertyInfo in type.GetProperties(PublicInstanceProperties))
            {
                document.AddPropertyValue(propertyInfo.Name, propertyInfo.GetValue(obj, null));
            }

            return document;
        }

Same methods

PropertyBagConverter::Convert ( PropertyBag propertyBag ) : object

Usage Example

Пример #1
0
        public void Restoration_of_an_event_from_a_property_bag_containing_nulls_should_not_fail()
        {
            try
            {
                var converter = new PropertyBagConverter { TypeResolver = new SimpleEventTypeResolver() };

                var bag = new PropertyBag(typeof(TestEvent).AssemblyQualifiedName);
                bag.AddPropertyValue("SomeString", null);

                var obj = converter.Convert(bag);

                obj.Should().NotBeNull();
                obj.Should().BeOfType<TestEvent>();

                ((TestEvent) obj).SomeString.Should().BeNull();
            }
            catch(Exception e)
            {
                Assert.Fail(e.ToString());
            }
        }