AmazedSaint.Elastic.Lib.ElasticObject.TryGetMember C# (CSharp) Метод

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

Catch a get member invocation
public TryGetMember ( GetMemberBinder binder, object &result ) : bool
binder System.Dynamic.GetMemberBinder
result object
Результат bool
        public override bool TryGetMember(GetMemberBinder binder, out object result)
        {
            if (elasticProvider.HasAttribute(binder.Name))
            {
                result = elasticProvider.Attribute(binder.Name).InternalValue;
            }
            else
            {
                var obj = elasticProvider.Element(binder.Name);
                if (obj != null)
                {
                    result = obj;
                }
                else
                {
                    var exp = new ElasticObject(binder.Name,null);
                    elasticProvider.AddElement(exp);
                    result = exp;
                }
            }

            return true;
        }