Ejemplo n.º 1
0
        public LambdaScopeFactory(LambdaParameterNameFactory nameFactory, HasManyThroughAttribute hasManyThrough = null)
        {
            ArgumentGuard.NotNull(nameFactory, nameof(nameFactory));

            _nameFactory    = nameFactory;
            _hasManyThrough = hasManyThrough;
        }
Ejemplo n.º 2
0
        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;
        }
Ejemplo n.º 4
0
        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;
        }
Ejemplo n.º 8
0
        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;
 }
Ejemplo n.º 10
0
 public LambdaParameterNameScope(string name, LambdaParameterNameFactory owner)
 {
     _owner = owner ?? throw new ArgumentNullException(nameof(owner));
     Name   = name ?? throw new ArgumentNullException(nameof(name));
 }