Esempio n. 1
0
        public UnionSelectQuery <TResult> From <TEntity>(Action <SelectFromBuilder <TEntity> > configure)
        {
            if (configure == null)
            {
                throw new ArgumentNullException(nameof(configure), "Select builder configure action must be provided.");
            }

            var builder = new SelectFromBuilder <TEntity>();

            configure.Invoke(builder);

            _selects.Add(builder.BuildQuery());

            if (!_metadataResolved)
            {
                (Type propertyType, PostgresDataType dataType) = builder.GetMetadata();
                _propertyType = propertyType;
                _dataType     = dataType;
            }

            return(this);
        }
Esempio n. 2
0
 public SelectQueryFluentBuilder <TModel, TModel> SelectOnly(FieldListBuilder <TModel> builder)
 {
     return(new SelectQueryFluentBuilder <TModel, TModel>(SelectFromBuilder.FromFieldListBuilder(builder), false, _executor));
 }
Esempio n. 3
0
 public SelectQueryFluentBuilder <TModel, bool> Exists()
 {
     return(new SelectQueryFluentBuilder <TModel, bool>(SelectFromBuilder.FromExpression <TModel, int>(x => 1), true, _executor));
 }
Esempio n. 4
0
 public SelectQueryFluentBuilder <TModel, TNewModel> Select <TNewModel>(Expression <Func <TModel, TNewModel> > pr)
 {
     return(new SelectQueryFluentBuilder <TModel, TNewModel>(SelectFromBuilder.FromExpression(pr), false, _executor));
 }
Esempio n. 5
0
 public SelectQueryFluentBuilder <TModel, TModel> Select()
 {
     return(new SelectQueryFluentBuilder <TModel, TModel>(SelectFromBuilder.AllColumns <TModel>(), false, _executor));
 }
Esempio n. 6
0
 public SelectQueryFluentBuilder(SelectFromBuilder selectFromBuilder, bool existsQuery, QueryExecutor executor = null)
 {
     _executor          = executor;
     _selectFromBuilder = selectFromBuilder;
     _existsQuery       = existsQuery;
 }
Esempio n. 7
0
 public SelectQueryFluentBuilder <TCombinedModel, TNewModel> Select <TNewModel>(Expression <Func <TCombinedModel, TNewModel> > pr)
 {
     return(new SelectQueryFluentBuilder <TCombinedModel, TNewModel>(SelectFromBuilder.FromCombinedExpression(_tablesList, pr), false, _executor));
 }
Esempio n. 8
0
 public SelectQueryFluentBuilder <TCombinedModel, TCombinedModel> Select()
 {
     return(new SelectQueryFluentBuilder <TCombinedModel, TCombinedModel>(SelectFromBuilder.AllColumnsFromCombined <TCombinedModel>(_tablesList), false, _executor));
 }