public LambdaScopeFactory(LambdaParameterNameFactory nameFactory, HasManyThroughAttribute hasManyThrough = null) { ArgumentGuard.NotNull(nameFactory, nameof(nameFactory)); _nameFactory = nameFactory; _hasManyThrough = hasManyThrough; }
public LambdaScope(LambdaParameterNameFactory nameFactory, Type elementType, Expression accessorExpression, HasManyThroughAttribute hasManyThrough) { if (nameFactory == null) { throw new ArgumentNullException(nameof(nameFactory)); } if (elementType == null) { throw new ArgumentNullException(nameof(elementType)); } _parameterNameScope = nameFactory.Create(elementType.Name); Parameter = Expression.Parameter(elementType, _parameterNameScope.Name); if (accessorExpression != null) { Accessor = accessorExpression; } else if (hasManyThrough != null) { Accessor = Expression.Property(Parameter, hasManyThrough.RightProperty); } else { Accessor = Parameter; } HasManyThrough = hasManyThrough; }
public LambdaParameterNameScope(string name, LambdaParameterNameFactory owner) { ArgumentGuard.NotNullNorEmpty(name, nameof(name)); ArgumentGuard.NotNull(owner, nameof(owner)); Name = name; _owner = owner; }
public WhereClauseBuilder(Expression source, LambdaScope lambdaScope, Type extensionType, LambdaParameterNameFactory nameFactory) : base(lambdaScope) { ArgumentGuard.NotNull(source, nameof(source)); ArgumentGuard.NotNull(extensionType, nameof(extensionType)); ArgumentGuard.NotNull(nameFactory, nameof(nameFactory)); _source = source; _extensionType = extensionType; _nameFactory = nameFactory; }
public SelectClauseBuilder(Expression source, LambdaScope lambdaScope, IModel entityModel, Type extensionType, LambdaParameterNameFactory nameFactory, IResourceFactory resourceFactory, IResourceContextProvider resourceContextProvider) : base(lambdaScope) { _source = source ?? throw new ArgumentNullException(nameof(source)); _entityModel = entityModel ?? throw new ArgumentNullException(nameof(entityModel)); _extensionType = extensionType ?? throw new ArgumentNullException(nameof(extensionType)); _nameFactory = nameFactory ?? throw new ArgumentNullException(nameof(nameFactory)); _resourceFactory = resourceFactory ?? throw new ArgumentNullException(nameof(resourceFactory)); _resourceContextProvider = resourceContextProvider ?? throw new ArgumentNullException(nameof(resourceContextProvider)); }
public QueryableBuilder(Expression source, Type elementType, Type extensionType, LambdaParameterNameFactory nameFactory, IResourceFactory resourceFactory, IResourceContextProvider resourceContextProvider, IModel entityModel, LambdaScopeFactory lambdaScopeFactory = null) { _source = source ?? throw new ArgumentNullException(nameof(source)); _elementType = elementType ?? throw new ArgumentNullException(nameof(elementType)); _extensionType = extensionType ?? throw new ArgumentNullException(nameof(extensionType)); _nameFactory = nameFactory ?? throw new ArgumentNullException(nameof(nameFactory)); _resourceFactory = resourceFactory ?? throw new ArgumentNullException(nameof(resourceFactory)); _resourceContextProvider = resourceContextProvider ?? throw new ArgumentNullException(nameof(resourceContextProvider)); _entityModel = entityModel ?? throw new ArgumentNullException(nameof(entityModel)); _lambdaScopeFactory = lambdaScopeFactory ?? new LambdaScopeFactory(_nameFactory); }
public SelectClauseBuilder(Expression source, LambdaScope lambdaScope, IModel entityModel, Type extensionType, LambdaParameterNameFactory nameFactory, IResourceFactory resourceFactory, IResourceContextProvider resourceContextProvider) : base(lambdaScope) { ArgumentGuard.NotNull(source, nameof(source)); ArgumentGuard.NotNull(entityModel, nameof(entityModel)); ArgumentGuard.NotNull(extensionType, nameof(extensionType)); ArgumentGuard.NotNull(nameFactory, nameof(nameFactory)); ArgumentGuard.NotNull(resourceFactory, nameof(resourceFactory)); ArgumentGuard.NotNull(resourceContextProvider, nameof(resourceContextProvider)); _source = source; _entityModel = entityModel; _extensionType = extensionType; _nameFactory = nameFactory; _resourceFactory = resourceFactory; _resourceContextProvider = resourceContextProvider; }
public QueryableBuilder(Expression source, Type elementType, Type extensionType, LambdaParameterNameFactory nameFactory, IResourceFactory resourceFactory, IResourceContextProvider resourceContextProvider, IModel entityModel, LambdaScopeFactory lambdaScopeFactory = null) { ArgumentGuard.NotNull(source, nameof(source)); ArgumentGuard.NotNull(elementType, nameof(elementType)); ArgumentGuard.NotNull(extensionType, nameof(extensionType)); ArgumentGuard.NotNull(nameFactory, nameof(nameFactory)); ArgumentGuard.NotNull(resourceFactory, nameof(resourceFactory)); ArgumentGuard.NotNull(resourceContextProvider, nameof(resourceContextProvider)); ArgumentGuard.NotNull(entityModel, nameof(entityModel)); _source = source; _elementType = elementType; _extensionType = extensionType; _nameFactory = nameFactory; _resourceFactory = resourceFactory; _resourceContextProvider = resourceContextProvider; _entityModel = entityModel; _lambdaScopeFactory = lambdaScopeFactory ?? new LambdaScopeFactory(_nameFactory); }
public LambdaScopeFactory(LambdaParameterNameFactory nameFactory, HasManyThroughAttribute hasManyThrough = null) { _nameFactory = nameFactory ?? throw new ArgumentNullException(nameof(nameFactory)); _hasManyThrough = hasManyThrough; }
public LambdaParameterNameScope(string name, LambdaParameterNameFactory owner) { _owner = owner ?? throw new ArgumentNullException(nameof(owner)); Name = name ?? throw new ArgumentNullException(nameof(name)); }