Class DynamicDocument
Динамический объект.
Namespace:InfinniPlatform.Dynamic
Assembly:InfinniPlatform.Core.Abstractions.dll
Syntax
public class DynamicDocument : IDynamicMetaObjectProvider, IEnumerable, ICustomTypeDescriptor
Remarks
Обеспечивает поведение, аналогичное поведению объекта в JavaScript. По аналогии можно осуществлять прототипное наследование. Прототип может быть определен, как наследник DynamicDocument с определенными в нем прототипными членами, которые можно будет подменить у конкретного экземпляра - наследника прототипа.
Constructors
| Improve this Doc View SourceDynamicDocument()
Declaration
public DynamicDocument()
DynamicDocument(IDictionary<String, Object>)
Declaration
public DynamicDocument(IDictionary<string, object> properties)
Parameters
Type | Name | Description |
---|---|---|
IDictionary<System.String, System.Object> | properties |
Properties
| Improve this Doc View SourceItem[String]
Возвращает или устанавливает значение члена с заданным именем.
Declaration
public object this[string memberName] { get; set; }
Parameters
Type | Name | Description |
---|---|---|
System.String | memberName | Имя члена. |
Property Value
Type | Description |
---|---|
System.Object | Значение члена. |
Methods
| Improve this Doc View SourceAdd(String, Object)
Устанавливает значение члена с заданным именем.
Declaration
public void Add(string memberName, object memberValue)
Parameters
Type | Name | Description |
---|---|---|
System.String | memberName | Имя члена. |
System.Object | memberValue | Значение члена. |
Remarks
Метод добавлен для возможности использования красивых инициализаторов.
new DynamicDocument
{
{ "Property1", 1 },
{ "Property2", 2 }
}
Clear()
Удаляет динамические свойства объекта.
Declaration
public void Clear()
ToDictionary()
Возвращает значение свойств объекта в виде словаря.
Declaration
public IDictionary<string, object> ToDictionary()
Returns
Type | Description |
---|---|
IDictionary<System.String, System.Object> |
TryGetMember(String)
Возвращает значение члена с заданным именем.
Declaration
public virtual object TryGetMember(string memberName)
Parameters
Type | Name | Description |
---|---|---|
System.String | memberName | Имя члена. |
Returns
Type | Description |
---|---|
System.Object | Значение члена. |
TryInvokeMember(String, Object[])
Вызывает член с заданным именем.
Declaration
public virtual object TryInvokeMember(string memberName, object[] invokeArguments)
Parameters
Type | Name | Description |
---|---|---|
System.String | memberName | Имя члена. |
System.Object[] | invokeArguments | Аргументы вызова. |
Returns
Type | Description |
---|---|
System.Object | Результат вызова. |
TrySetMember(String, Object)
Устанавливает значение члена с заданным именем.
Declaration
public virtual object TrySetMember(string memberName, object memberValue)
Parameters
Type | Name | Description |
---|---|---|
System.String | memberName | Имя члена. |
System.Object | memberValue | Значение члена. |
Returns
Type | Description |
---|---|
System.Object | Значение члена. |