Class VariablesStorage
public sealed class VariablesStorage : DynamicObject, IVariablesStorage, IDynamicMetaObjectProvider, INotifyPropertyChanged, IDisposable
- Inheritance
-
VariablesStorage
- Implements
- Inherited Members
Methods
Dispose()
Closes and releases all resources used by the VariablesStorage.
public void Dispose()
EnumerateVariableDefinitions()
public IEnumerable<Variable> EnumerateVariableDefinitions()
Returns
GetValue(string)
Gets a variable value.
public object GetValue(string name)
Parameters
name
stringThe variable name.
Returns
Exceptions
- ArgumentNullException
name
is null.- KeyNotFoundException
Variable
name
does not exist.
SetValue(string, object)
Sets a variable value.
public void SetValue(string name, object value)
Parameters
Exceptions
- ArgumentNullException
name
is null.
TryGetMember(GetMemberBinder, out object)
Provides the implementation for operations that get member values. Classes derived from the DynamicObject class can override this method to specify dynamic behavior for operations such as getting a value for a property.
public override bool TryGetMember(GetMemberBinder binder, out object result)
Parameters
binder
GetMemberBinderProvides information about the object that called the dynamic operation. The binder.Name property provides the name of the member on which the dynamic operation is performed. For example, for the Console.WriteLine(sampleObject.SampleProperty) statement, where sampleObject is an instance of the class derived from the DynamicObject class, binder.Name returns "SampleProperty". The binder.IgnoreCase property specifies whether the member name is case-sensitive.
result
objectThe result of the get operation. For example, if the method is called for a property, you can assign the property value to
result
.
Returns
- bool
true if the operation is successful; otherwise, false. If this method returns false, the run-time binder of the language determines the behavior. (In most cases, a run-time exception is thrown.)
Events
PropertyChanged
Occurs when a property value changes.
public event PropertyChangedEventHandler PropertyChanged