DynamicObject

Wisej.Core.DynamicObject

Namespace: Wisej.Core

Assembly: Wisej.Framework (3.5.0.0)

Custom fast implementation of a dynamic object that can handle the JSON serialization and deserialization. This class implements IDynamicMetaObjectProvider allowing the DLR to compile the dynamic member access on the fly. We could have derived from System.Dynamic.Dynamic but the implementation in the .NET framework uses exceptions to manage custom properties.

public class DynamicObject : IDynamicMetaObjectProvider, ICloneable, IList<Member>, ICollection<Member>, IEnumerable<Member>, IEnumerable, ISerializable, ICustomTypeDescriptor, INotifyPropertyChanged, IConvertible

Constructors

Default constructor.

Optional constructor. Takes the initial capacity to allocate the specified number of slots in the store.

Creates a new DynamicObject cloned from the source object.

Properties

Int32: Returns the number of fields.

Boolean: Returns true if the dynamic doesn't object contains any field.

Object: Returns or sets the value of the specified member.

Methods

Wipes out the object.

Wipes out the object but it keeps the capacity.

Clones the members of the dynamic object.

Returns: DynamicObject. The cloned instance.

This is a shallow copy. Reference members are copied by reference.

Returns whether the object contains the specified field.

Returns: Boolean. True if the field name exists in the store.

Copies all the values from the source object.

Deletes the field.

Returns: DynamicObject. Itself, this call can be chained.

Returns a new ComponentConfiguration object containing only the values that don't exist in the ComponentConfiguration object passed to the method.

Returns: Object. Returns null if there are no differences.

Returns an enumerator that iterates through the collection.

Returns: IEnumerator<Member>. A IEnumerator

Fires the PropertyChanged event.

Sorts the field by their name.

Serializes the object to a JSON string.

Returns: String. A String representing the serialized object.

Serializes the object to a JSON string.

Returns: String. A String representing the serialized object.

Removes the excess entries in the inner array and in all child fields, recursively.

Tries to retrieve the value for the specified member.

Returns: Boolean. True if the member was found, otherwise false.

Last updated