public static void UseRequestOptions([NotNull] this DataStoreConnection connection, [NotNull] TableRequestOptions options) { Check.NotNull(connection, "connection"); Check.NotNull(options, "options"); connection.AsAtsConnection().TableRequestOptions = options; }
public int DaysLeft(int pf) { try { var connection = new DataStoreConnection(); using (var db = connection.GetDBConnection()) { db.Open(); var command = db.CreateCommand(); command.CommandText = @"SELECT (21 - SUM(DaysRequested)) as DaysLeft FROM [Leave].[LeaveRequest] WHERE Requester = @PfNumber AND (DATEPART(YYYY, StartDate) = DATEPART(YYYY, GETDATE()));"; command.Parameters.AddWithValue("@PfNumber", pf); try { var results = command.ExecuteScalar(); if (results == null) { throw new ArgumentException("Requester whose PF number has been supplied has not requested for leave this year."); } int daysLeft = (int)results; // TODO: Log query for days left. return daysLeft; } catch (SqlException) { throw; } finally { db.Dispose(); db.Close(); } } } catch (SqlException) { throw; } catch (Exception) { throw; } }
protected RelationalDatabase( [NotNull] DbContextService <IModel> model, [NotNull] DataStoreCreator dataStoreCreator, [NotNull] DataStoreConnection connection, [NotNull] ILoggerFactory loggerFactory) : base(model, dataStoreCreator, connection, loggerFactory) { }
public ConcreteDatabase( DbContextService <IModel> model, DataStoreCreator dataStoreCreator, DataStoreConnection connection, ILoggerFactory loggerFactory) : base(model, dataStoreCreator, connection, loggerFactory) { }
public ConcreteMigrationsEnabledDatabase( DbContextService <IModel> model, DataStoreCreator dataStoreCreator, DataStoreConnection connection, Migrator migrator, ILoggerFactory loggerFactory) : base(model, dataStoreCreator, connection, migrator, loggerFactory) { }
private void CreateLibraryFromStrata( Library sourceLibrary, string targetFileName, List <int> keepStratumIds) { CreateTargetLibrary(sourceLibrary, targetFileName); WinFormSession wfs = (WinFormSession)this.Session; string KeepStratumIdString = CreateKeepStratumIdString(keepStratumIds); DataStoreConnection conn = new DataStoreConnection("SQLite", targetFileName); using (SyncroSimTransactionScope scope = Session.CreateTransactionScope()) { using (DataStore store = Session.CreateDataStore(conn)) { DataTable AllTables = store.CreateDataTableFromQuery( "SELECT name FROM sqlite_master WHERE type='table'", "AllTables"); foreach (DataRow dr in AllTables.Rows) { string TableName = Convert.ToString(dr["name"]); if (!ShouldProcessTable(TableName)) { continue; } DataTable TableSchema = GetTableSchema(TableName, store); if (TableSchema.Columns.Contains("StratumID")) { PurgeStratumIds(TableName, "StratumID", KeepStratumIdString, store); } if (TableSchema.Columns.Contains("StratumIDSource")) { PurgeStratumIds(TableName, "StratumIDSource", KeepStratumIdString, store); } if (TableSchema.Columns.Contains("StratumIDDest")) { PurgeStratumIds(TableName, "StratumIDDest", KeepStratumIdString, store); } } string Title = Path.GetFileNameWithoutExtension(targetFileName); string q = string.Format(CultureInfo.InvariantCulture, "UPDATE core_Library SET Name='{0}'", Title); store.ExecuteNonQuery(q); } scope.Complete(); } }
public static AtsConnection AsAtsConnection([NotNull] this DataStoreConnection connection) { Check.NotNull(connection, "connection"); var atsConnection = connection as AtsConnection; if (atsConnection == null) { throw new InvalidOperationException(Strings.AtsConnectionNotInUse); } return(atsConnection); }
protected MigrationsEnabledDatabase( [NotNull] DbContextService <IModel> model, [NotNull] DataStoreCreator dataStoreCreator, [NotNull] DataStoreConnection connection, [NotNull] Migrator migrator, [NotNull] ILoggerFactory loggerFactory) : base(model, dataStoreCreator, connection, loggerFactory) { Check.NotNull(migrator, "migrator"); _migrator = migrator; }
private static void CreateDatabaseSequence(BronieContext context, DataStoreConnection storeConnection) { var executor = new SqlStatementExecutor(); var operations = new SqlServerSequenceValueGeneratorFactory(executor) .GetUpMigrationOperations(context.Model.GetEntityType(typeof(Pegasus)) .GetProperty("Identifier")); var sql = new SqlServerMigrationOperationSqlGenerator(new SqlServerTypeMapper()) .Generate(operations, generateIdempotentSql: false); // TODO: Should be able to get relational connection without cast var connection = ((RelationalConnection)storeConnection).DbConnection; executor.ExecuteNonQuery(connection, sql); }
protected Database( [NotNull] DbContextService <IModel> model, [NotNull] DataStoreCreator dataStoreCreator, [NotNull] DataStoreConnection connection, [NotNull] ILoggerFactory loggerFactory) { Check.NotNull(model, "model"); Check.NotNull(dataStoreCreator, "dataStoreCreator"); Check.NotNull(connection, "connection"); Check.NotNull(loggerFactory, "loggerFactory"); _model = model; _dataStoreCreator = dataStoreCreator; _connection = connection; _logger = new LazyRef <ILogger>(loggerFactory.Create <Database>); }
public static void ResetRequestOptions([NotNull] this DataStoreConnection connection) { Check.NotNull(connection, "connection"); connection.AsAtsConnection().TableRequestOptions = null; }
public static void UseBatching([NotNull] this DataStoreConnection connection, bool value) { Check.NotNull(connection, "connection"); connection.AsAtsConnection().Batching = value; }