public string Resolve(MemberInfo info) { if (info == null) { return(null); } var name = info.Name; var resolvedName = _settings.DefaultPropertyNameInferrer(name); var att = ElasticAttributes.Property(info); if (att != null && !att.Name.IsNullOrEmpty()) { resolvedName = att.Name; } return(resolvedName); }
protected override Expression VisitMemberAccess(MemberExpression expression, Stack <string> stack, Stack <IElasticPropertyAttribute> properties) { if (stack != null) { var name = expression.Member.Name; var resolvedName = this._settings.DefaultPropertyNameInferrer(name); var att = ElasticAttributes.Property(expression.Member); if (att != null) { properties.Push(att); } if (att != null && !att.Name.IsNullOrEmpty()) { resolvedName = att.Name; } stack.Push(resolvedName); } return(base.VisitMemberAccess(expression, stack, properties)); }