Example #1
0
        public static async Task <bool> DeleteAsync <Entity1, Entity2, Summary>(ISqlExecutor executor, Entity1 entity1, Entity2 entity2, IEnumerable <Summary> param = null)
            where Entity1 : class
            where Entity2 : class
            where Summary : class
        {
            var resultValue = true;

            using (var deleter = executor.OpenNewDbConnection())
            {
                using (var transactionScope = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled))
                {
                    resultValue = await deleter.DeleteAsync <Entity1>(entity1).ConfigureAwait(false);

                    resultValue = resultValue && await deleter.DeleteAsync(entity2).ConfigureAwait(false);

                    if ((param != null) && (param.Any()))
                    {
                        resultValue = resultValue && await deleter.DeleteCollectionAsync(param).ConfigureAwait(false);
                    }
                    if (resultValue)
                    {
                        transactionScope.Complete();
                    }
                    else
                    {
                        transactionScope.Dispose();
                    }
                }
            }
            return(resultValue);
        }
Example #2
0
 public void Setup()
 {
     _queryStore = new QueryStore();
     _executor   = SetupSqlQueryExecutor();
     _dialogMock = new Mock <IDialogService>();
     _dialogMock.Setup(x => x.ShowErrorMessage(It.IsAny <string>())).Callback(() => _askedToShow = true);
 }
Example #3
0
 public Supplier(ISqlExecutor executor, IMapper mapper, SupplierPoco supplierPoco, SupplierDto dto)
 {
     _supplierValue  = supplierPoco;
     _supplierDto    = dto;
     _sqlExecutor    = executor;
     _supplierMapper = mapper;
 }
Example #4
0
 /// <summary>
 /// Client data saver
 /// </summary>
 /// <param name="executor">Sql command executor</param>
 public OfficeDataSaver(ISqlExecutor executor)
 {
     _executor = executor;
     /// FIXME: violate the law of demter.
     _mapper            = MapperField.GetMapper();
     _queryStoreFactory = new QueryStoreFactory();
 }
Example #5
0
 public Supplier(ISqlExecutor executor)
 {
     _sqlExecutor   = executor;
     _supplierValue = new SupplierPoco();
     _supplierDto   = new SupplierDto();
     InitializeMapping();
 }
 /// <summary>
 ///  Constructor
 /// </summary>
 /// <param name="sqlExecutor">SqlExecutor value</param>
 public ClientDataAccessLayer(ISqlExecutor sqlExecutor)
 {
     _sqlExecutor = sqlExecutor;
     _dataLoader  = new ClientDataLoader(sqlExecutor);
     _dataSaver   = new ClientDataSaver(sqlExecutor);
     _dataDeleter = new ClientDeleter(sqlExecutor);
 }
Example #7
0
 /// <summary>
 /// Instantiates a new instance of <see cref="DbProvider"/> with the passed in <paramref name="connectionString"/>, and <paramref name="queryCommandType"/>, and <paramref name="factory"/>
 /// </summary>
 /// <param name="factory">An instance of a <see cref="DbProviderFactory"/> client class</param>
 /// <param name="connectionString">The connection string used to query a data store</param>
 /// <param name="queryCommandType">Represents how a command should be interpreted by the data provider</param>
 protected DbProvider(string connectionString, CommandType queryCommandType, DbProviderFactory factory)
 {
     //Set fields/properties
     _executeSQL      = new SqlExecutor(factory);
     ConnectionString = connectionString;
     QueryCommandType = queryCommandType;
 }
Example #8
0
        /// <summary>
        ///  This test the connection fro the page.
        /// </summary>
        /// <param name="sqlExecutor">Executor instance for the page</param>
        /// <param name="connectionValue">Connection value</param>
        private void TestConnection(ISqlExecutor sqlExecutor, string connectionValue)
        {
            // ok now we try to connect
            try
            {
                using (var connection = sqlExecutor.OpenNewDbConnection())
                {
                    if (connection == null)
                    {
                        throw new System.ArgumentException(
                                  "Invalid connection string with value " + connectionValue);
                    }

                    if (connection.State != ConnectionState.Open)
                    {
                        throw new System.ArgumentException(
                                  "Invalid connection string with value " + connectionValue);
                    }
                }
            }
            catch (System.Exception e)
            {
                throw new System.ArgumentException("Invalid connection string with value " + connectionValue, e);
            }
        }
Example #9
0
 /// <summary>
 /// DataFilterSummaryService is a service for filtering data without mapping. It can be used
 /// for mapping the data.
 /// </summary>
 /// <param name="dialogService">Dialog service to be used</param>
 /// <param name="sqlExecutor">SqlExecutor to be used.</param>
 public DataFilterSummaryService(IDialogService dialogService, ISqlExecutor sqlExecutor) : base(dialogService)
 {
     _incrementalList   = new IncrementalList <Dto>(LoadMoreItems);
     _queryStoreFactory = new QueryStoreFactory();
     _sqlExecutor       = sqlExecutor;
     _dialogService     = dialogService;
 }
 /// <summary>
 /// SqlQuery
 /// </summary>
 /// <typeparam name="T">数据类型</typeparam>
 /// <param name="executor"></param>
 /// <param name="db"></param>
 /// <param name="sql"></param>
 /// <param name="parameters">sql的参数</param>
 /// <param name="ignoreProptsForRtnType">数据类型需要忽略的属性名</param>
 /// <returns></returns>
 public static IReadOnlyList <T> QueryUseDict <T>(this ISqlExecutor executor, DbContext db, string sql,
                                                  IDictionary <string, object> parameters,
                                                  IEnumerable <string> ignoreProptsForRtnType = null)
     where T : new()
 {
     return(executor.Query <T>(db, sql, EFHelper.Services.SqlParamConverter.DictionaryToDBParams(db, parameters), ignoreProptsForRtnType));
 }
Example #11
0
 /// <summary>
 ///  This is a service for loading company data
 /// </summary>
 /// <param name="sqlExecutor">Interface to the sql executor</param>
 public CompanyDataServices(ISqlExecutor sqlExecutor)
 {
     this.sqlExecutor = sqlExecutor;
     _loader          = new CompanyDataLoader(sqlExecutor);
     _saver           = new CompanyDataSaver(sqlExecutor);
     _deleter         = new CompanyDataDeleter(sqlExecutor);
 }
 /// <summary>
 /// SqlScalar
 /// </summary>
 /// <param name="executor"></param>
 /// <param name="db"></param>
 /// <param name="sql"></param>
 /// <param name="paramsModel">sql的参数模型对象</param>
 /// <param name="ignoreProptsForParamModel">sql的参数模型对象中需要忽略的属性名</param>
 /// <returns></returns>
 public static object ScalarUseModel(this ISqlExecutor executor, DbContext db, string sql,
                                     object paramsModel,
                                     params string[] ignoreProptsForParamModel)
 {
     return(executor.Scalar(db, sql,
                            EFHelper.Services.SqlParamConverter.ObjectToDBParams(db, paramsModel, ignoreProptsForParamModel)));
 }
Example #13
0
        public void Setup()
        {
            ISqlExecutor executor = base.SetupSqlQueryExecutor();

            _dataServices       = new DataServiceImplementation(executor);
            _localeDataServices = _dataServices.GetDataService <ILocaleDataServices>();
        }
Example #14
0
        private void ValidateSchemaBasedQueriesWork(
            ISqlExecutor sqlExecutor,
            Func <string, string> catalogNameResolver,
            Func <string, string> schemaNameResolver)
        {
            var storageSchema = GetStorageSchema();
            var databaseMap   = GetDatabaseMap();
            var schemaMap     = GetSchemaMap();

            var storageNodeText = TryGetStorageNodeText(UpgradeContext.NodeConfiguration.NodeId);

            var type        = typeof(Part1.TestEntity1);
            var catalogName = catalogNameResolver(databaseMap[type]);
            var schemaName  = schemaNameResolver(schemaMap[type]);
            var testEntity1 = storageSchema.Catalogs[catalogName].Schemas[schemaName].Tables["TestEntity1"];
            var tableRef    = SqlDml.TableRef(testEntity1);
            var select      = SqlDml.Select(tableRef);

            select.Columns.Add(tableRef["Text"]);

            var text = sqlExecutor.ExecuteScalar(select);

            Assert.That(text, Is.EqualTo(storageNodeText));

            type        = typeof(Part2.TestEntity2);
            catalogName = catalogNameResolver(databaseMap[type]);
            schemaName  = schemaNameResolver(schemaMap[type]);
            var testEntity2 = storageSchema.Catalogs[catalogName].Schemas[schemaName].Tables["TestEntity2"];

            tableRef = SqlDml.TableRef(testEntity2);
            select   = SqlDml.Select(tableRef);
            select.Columns.Add(tableRef["Text"]);

            text = sqlExecutor.ExecuteScalar(select);
            Assert.That(text, Is.EqualTo(storageNodeText));

            type        = typeof(Part3.TestEntity3);
            catalogName = catalogNameResolver(databaseMap[type]);
            schemaName  = schemaNameResolver(schemaMap[type]);
            var testEntity3 = storageSchema.Catalogs[catalogName].Schemas[schemaName].Tables["TestEntity3"];

            tableRef = SqlDml.TableRef(testEntity3);
            select   = SqlDml.Select(tableRef);
            select.Columns.Add(tableRef["Text"]);

            text = sqlExecutor.ExecuteScalar(select);
            Assert.That(text, Is.EqualTo(storageNodeText));

            type        = typeof(Part4.TestEntity4);
            catalogName = catalogNameResolver(databaseMap[type]);
            schemaName  = schemaNameResolver(schemaMap[type]);
            var testEntity4 = storageSchema.Catalogs[catalogName].Schemas[schemaName].Tables["TestEntity4"];

            tableRef = SqlDml.TableRef(testEntity4);
            select   = SqlDml.Select(tableRef);
            select.Columns.Add(tableRef["Text"]);

            text = sqlExecutor.ExecuteScalar(select);
            Assert.That(text, Is.EqualTo(storageNodeText));
        }
Example #15
0
 /// <summary>
 ///  Reitinialize the sql executor and all the services provided by this interface with
 ///  a new connection string.
 /// </summary>
 /// <param name="sqlExecutor">Executor to be used.</param>
 /// <param name="connectionValue">Connection value.</param>
 private void InitServices(ISqlExecutor sqlExecutor, string connectionValue = "")
 {
     if (!string.IsNullOrEmpty(connectionValue))
     {
         sqlExecutor.ConnectionString = connectionValue;
         TestConnection(sqlExecutor, connectionValue);
     }
     _executor                      = sqlExecutor;
     _supplierDataServices          = new SupplierDataAccessLayer(sqlExecutor);
     _helperDataServices            = new HelperDataAccessLayer(sqlExecutor);
     _commissionAgentDataServices   = new CommissionAgentAccessLayer(sqlExecutor);
     _vehicleDataServices           = new VehiclesDataAccessLayer(sqlExecutor);
     _settingsDataService           = new SettingsDataService(sqlExecutor);
     _clientDataServices            = new ClientDataAccessLayer(sqlExecutor);
     _officeDataService             = new OfficeDataService(sqlExecutor);
     _companyDataService            = new CompanyDataServices(sqlExecutor);
     _contractDataService           = new ContractDataServices(sqlExecutor);
     _invoiceDataService            = new InvoiceDataServices(sqlExecutor);
     _bookingDataService            = new BookingDataAccessLayer(sqlExecutor, null);
     _fareDataService               = new FareDataServices(sqlExecutor);
     _reservationRequestDataService = new ReservationRequestDataAccessLayer(sqlExecutor);
     _budgetDataService             = new BudgetDataAccessLayer(sqlExecutor);
     _bookingIncidentDataService    = new BookingIncidentDataAccessLayer(sqlExecutor);
     _userDataService               = new UserDataService(sqlExecutor);
 }
        // Constructors

        public SchemaExtractor(UpgradeContext context, Session session)
        {
            this.context = context;

            services = context.Services;
            executor = session.Services.Demand <ISqlExecutor>();
        }
Example #17
0
 public Supplier(ISqlExecutor executor, IMapper mapper, SupplierPoco supplierPoco, SupplierViewObject viewObject)
 {
     _supplierValue      = supplierPoco;
     _supplierViewObject = viewObject;
     _sqlExecutor        = executor;
     _supplierMapper     = mapper;
 }
Example #18
0
 public BookingDataSaver(ISqlExecutor sqlExecutor, IMapper mapper)
 {
     this._executor        = sqlExecutor;
     this._mapper          = mapper;
     this._validationChain = new BookingNotNullRule();
     this.LoadValidationRules(sqlExecutor);
 }
Example #19
0
 public UsersDataAccessLayer(ISqlExecutor sqlExecutor) : base(sqlExecutor)
 {
     _dataLoader  = new DataLoader <USURE, UsersDto>(sqlExecutor);
     _dataSaver   = new DataSaver <USURE, UsersDto>(sqlExecutor);
     _dataDeleter = new DataDeleter <USURE, UsersDto>(sqlExecutor);
     TableName    = "USURE";
     _mapper      = MapperField.GetMapper();
 }
Example #20
0
 /// <summary>
 ///  Constructor
 /// </summary>
 /// <param name="sqlExecutor">SqlExecutor value</param>
 public ClientDataAccessLayer(ISqlExecutor sqlExecutor) : base(sqlExecutor)
 {
     _sqlExecutor = sqlExecutor;
     _dataLoader  = new ClientDataLoader(sqlExecutor);
     _dataSaver   = new ClientDataSaver(sqlExecutor);
     _dataDeleter = new ClientDeleter(sqlExecutor);
     TableName    = "CLIENTES1";
 }
 /// <summary>
 ///  Constructor for the budget
 /// </summary>
 /// <param name="sqlExecutor"></param>
 public BudgetDataAccessLayer(ISqlExecutor sqlExecutor) : base(sqlExecutor)
 {
     _dataLoader  = new BudgetDataLoader(sqlExecutor);
     _dataSaver   = new BudgetDataSaver(sqlExecutor);
     _dataDeleter = new BudgetDataDeleter(sqlExecutor);
     TableName    = "PRESUP1";
     _mapper      = MapperField.GetMapper();
 }
 /// <summary>
 ///  Booking data access layer.
 /// </summary>
 /// <param name="executor">Executor handle database connection.</param>
 public BookingDataAccessLayer(ISqlExecutor executor) : base(executor)
 {
     _mapper      = MapperField.GetMapper();
     _dataLoader  = new BookingDataLoader(SqlExecutor, _mapper);
     _dataDeleter = new BookingDataDeleter(SqlExecutor, _mapper);
     _dataSaver   = new BookingDataSaver(SqlExecutor, _mapper);
     TableName    = "RESERVAS1";
 }
Example #23
0
        public void Setup()
        {
            IConfigurationService service   = _testBase.SetupConfigurationService();
            ISqlExecutor          _executor = _testBase.SetupSqlQueryExecutor();

            _dataServices      = new DataServiceImplementation(_executor);
            _carveBarViewModel = new KarveToolBarViewModel(_dataServices, _eventManger, _careKeerp, _regionManager, service);
        }
Example #24
0
        // Constructors

        public MetadataExtractor(MetadataMapping mapping, ISqlExecutor executor)
        {
            ArgumentValidator.EnsureArgumentNotNull(mapping, "mapping");
            ArgumentValidator.EnsureArgumentNotNull(executor, "executor");

            this.mapping  = mapping;
            this.executor = executor;
        }
 public BookingDataAccessLayer(ISqlExecutor sqlExecutor) : base(sqlExecutor)
 {
     _dataLoader  = new DataLoader <RESERVAS1, BookingDto>(sqlExecutor);
     _dataSaver   = new DataSaver <RESERVAS1, BookingDto>(sqlExecutor);
     _dataDeleter = new DataDeleter <RESERVAS1, BookingDto>(sqlExecutor);
     TableName    = "RESERVAS1";
     _mapper      = MapperField.GetMapper();
 }
Example #26
0
 /// <summary>
 ///  Constructor
 /// </summary>
 /// <param name="sqlExecutor">This load the sql executor</param>
 public CompanyDataLoader(ISqlExecutor sqlExecutor)
 {
     _sqlExecutor       = sqlExecutor;
     _mapper            = MapperField.GetMapper();
     _currentPos        = 0;
     _helperBase        = new HelperBase();
     _queryStoreFactory = new QueryStoreFactory();
 }
Example #27
0
 public ReservationRequestDataAccessLayer(ISqlExecutor sqlExecutor) : base(sqlExecutor)
 {
     _dataLoader  = new DataLoader <PETICION, ReservationRequestDto>(sqlExecutor);
     _dataSaver   = new DataSaver <PETICION, ReservationRequestDto>(sqlExecutor);
     _dataDeleter = new DataDeleter <PETICION, ReservationRequestDto>(sqlExecutor);
     TableName    = "PETICION";
     _mapper      = MapperField.GetMapper();
 }
Example #28
0
 /// <summary>
 ///  Office data service constructor
 /// </summary>
 /// <param name="sqlExecutor">Sql Executor, interface for ADO.NET/Dapper access</param>
 public OfficeDataService(ISqlExecutor sqlExecutor)
 {
     _sqlExecutor       = sqlExecutor;
     _loader            = new OfficeDataLoader(sqlExecutor);
     _saver             = new OfficeDataSaver(sqlExecutor);
     _deleter           = new OfficeDataDeleter(sqlExecutor);
     _queryStoreFactory = new QueryStoreFactory();
 }
Example #29
0
 /// <summary>
 ///  This is a service for loading company data
 /// </summary>
 /// <param name="sqlExecutor">Interface to the sql executor</param>
 public CompanyDataServices(ISqlExecutor sqlExecutor) : base(sqlExecutor)
 {
     _loader  = new CompanyDataLoader(sqlExecutor);
     _saver   = new CompanyDataSaver(sqlExecutor);
     _deleter = new CompanyDataDeleter(sqlExecutor);
     // it is important to set for paging.
     TableName = "SUBLICEN";
 }
 /// <summary>
 /// BookingIncidentDataAccessLayer
 /// </summary>
 /// <param name="sqlExecutor">SQL executor</param>
 public BookingIncidentDataAccessLayer(ISqlExecutor sqlExecutor) : base(sqlExecutor)
 {
     _dataLoader  = new DataLoader <INCIRE, BookingIncidentViewObject>(sqlExecutor);
     _dataSaver   = new DataSaver <INCIRE, BookingIncidentViewObject>(sqlExecutor);
     _dataDeleter = new DataDeleter <INCIRE, BookingIncidentViewObject>(sqlExecutor);
     TableName    = "INCIRE";
     _mapper      = MapperField.GetMapper();
 }
 public SqlMigrator(IDatabaseMigratorLogger logger, ISqlExecutor sqlExecutor)
 {
     _logger = logger;
     _sqlExecutor = sqlExecutor;
 }
Example #32
0
 protected override void DoPrepare()
 {
     executor = Container.Resolve<ISqlExecutor>();
 }