Exemple #1
0
        private DbContext(
            bool removeDiacriticsOnTableNameAndColumnName,
            bool storeDateTimeAsTicks)
        {
            _removeDiacriticsOnTableNameAndColumnName = removeDiacriticsOnTableNameAndColumnName;

            var connection = new SqliteConnection("Data Source=:memory:;Mode=Memory");

            _storeDateTimeAsTicks = storeDateTimeAsTicks;
            _queriesManager       = new QueriesManager(connection);
            Database = new Database(_queriesManager, null);
        }
Exemple #2
0
        /// <summary>
        /// Create a Database context
        /// </summary>
        /// <param name="filePath">file path of the database</param>
        /// <param name="removeDiacriticsOnTableNameAndColumnName">if true the tableName and column name are generated without diacritics ex : 'crèmeBrûlée' would become 'cremeBrulee'</param>
        /// <param name="storeDateTimeAsTicks">if true store dateTime as ticks(long)</param>
        public DbContext(
            string filePath,
            bool removeDiacriticsOnTableNameAndColumnName = true,
            bool storeDateTimeAsTicks = false)
        {
            if (filePath == null)
            {
                throw new ArgumentNullException($"{nameof(filePath)}");
            }

            _removeDiacriticsOnTableNameAndColumnName = removeDiacriticsOnTableNameAndColumnName;
            _storeDateTimeAsTicks = storeDateTimeAsTicks;
            var connection = new SqliteConnection($"Data Source={filePath};Mode=ReadWriteCreate");

            _queriesManager = new QueriesManager(connection);
            Database        = new Database(_queriesManager, filePath);
        }
Exemple #3
0
 internal Database(QueriesManager queriesManager, string filePath)
 {
     _queriesManager = queriesManager;
     _queriesManager.InternalLogger.OnLog = OnLog;
     _filePath = filePath;
 }
Exemple #4
0
 internal TableQuery(TableMapping mapping, QueriesManager queriesManager)
 {
     _mapping        = mapping;
     _queriesManager = queriesManager;
 }