internal EntityDictionaryDynamicActor(IEntityDictionary <TKey, TEntity> dictionary, SyntaxOptions syntaxOptions) : base(dictionary, syntaxOptions) { _dictionary = dictionary; //TODO iterate over T properties and fill Expando property and Directory }
internal EntityObservableDynamicActor(IEntityObservable <TValue> observable, SyntaxOptions syntaxOptions) : base(observable, syntaxOptions) { //TODO iterate over T properties and fill Expando property and Directory }
internal EntityListDynamicActor(IEntityList <TEntity> list, SyntaxOptions syntaxOptions) : base(list, syntaxOptions) { //TODO iterate over T properties and fill Expando property and Directory }
internal EntityDirectoryDynamicActor(IEntityDirectory <TKey> directory, SyntaxOptions syntaxOptions) : base(directory, syntaxOptions) { }
public static dynamic AsDynamic <TEntity>(this TEntity entity, SyntaxOptions syntaxOptions = SyntaxOptions.DefaultAccess) where TEntity : IEntity => entity switch {
internal EntitySubjectDynamicActor(IEntitySubject <TValue> subject, SyntaxOptions syntaxOptions) : base(subject, syntaxOptions) { _value = subject; //TODO iterate over T properties and fill Expando property and Directory }
internal EntityDynamicDynamicActor(IEntityDynamic <TInterface> entityDynamic, SyntaxOptions syntaxOptions) : base(entityDynamic, syntaxOptions) { _dynamic = entityDynamic; _properties = entityDynamic.GetType().GetGenericArguments().First().GetProperties(BindingFlags.Instance | BindingFlags.Public).ToDictionary(property => property.Name); }
internal EntityDynamicActor(IEntity entity, SyntaxOptions syntaxOptions) { _entity = entity; _syntaxOptions = syntaxOptions; //TODO iterate over T properties and fill Expando property and Directory }