Exemple #1
0
        public ManualQueryWithReadOnlyForm()
        {
            InitializeComponent();

            var rowsStatementBuilder = new RowsStatementBuilder();

            rowsStatementBuilder.CommandText("SELECT * FROM tracks LIMIT {1} OFFSET {2}");

            dataGridViewPaging1.DbRequestHandler = new DbRequestHandler
            {
                Connection            = new SQLiteConnection("Data Source=chinook.db"),
                CountStatementBuilder = new CustomCountStatementBuilder(),
                RowsStatementBuilder  = new CustomRowsStatementBuilder()
            };
        }
        private void InitializeIfNecessary()
        {
            if (!_initialized)
            {
                if (CountStatementBuilder == null)
                {
                    CountStatementBuilder = new CountStatementBuilder();
                }

                _countHelper = new Helper <int>
                {
                    StatementBuilder = CountStatementBuilder,
                    TableName        = TableName,
                    Connection       = Connection
                };

                if (RowsStatementBuilder == null)
                {
                    RowsStatementBuilder = new RowsStatementBuilder();
                }

                _rowsHelper = new Helper <object>
                {
                    StatementBuilder = RowsStatementBuilder,
                    TableName        = TableName,
                    Connection       = Connection
                };

                if (Connection != null && Connection.State == ConnectionState.Closed)
                {
                    Connection.Open();
                    _shouldCloseConnection = true;
                }

                _initialized = true;
            }
        }