private bool TryResolveEntityContainerMemberAccess( EntityContainer entityContainer, string name, out ExpressionResolution resolution) { EntitySetBase outSet; if (this.TypeResolver.Perspective.TryGetExtent(entityContainer, name, this._parserOptions.NameComparisonCaseInsensitive, out outSet)) { resolution = (ExpressionResolution) new ValueExpression((DbExpression)outSet.Scan()); return(true); } EdmFunction functionImport; if (this.TypeResolver.Perspective.TryGetFunctionImport(entityContainer, name, this._parserOptions.NameComparisonCaseInsensitive, out functionImport)) { resolution = (ExpressionResolution) new MetadataFunctionGroup(functionImport.FullName, (IList <EdmFunction>) new EdmFunction[1] { functionImport }); return(true); } resolution = (ExpressionResolution)null; return(false); }
private bool TryResolveEntityContainerMemberAccess( EntityContainer entityContainer, string name, out ExpressionResolution resolution) { EntitySetBase entitySetBase; EdmFunction functionImport; if (TypeResolver.Perspective.TryGetExtent( entityContainer, name, _parserOptions.NameComparisonCaseInsensitive /*ignoreCase*/, out entitySetBase)) { resolution = new ValueExpression(entitySetBase.Scan()); return(true); } else if (TypeResolver.Perspective.TryGetFunctionImport( entityContainer, name, _parserOptions.NameComparisonCaseInsensitive /*ignoreCase*/, out functionImport)) { resolution = new MetadataFunctionGroup(functionImport.FullName, new[] { functionImport }); return(true); } else { resolution = null; return(false); } }