コード例 #1
0
        private questStatus delete(MasterPricingEntities dbContext, Quest.Functional.MasterPricing.DatabaseId databaseId)
        {
            // Initialize
            questStatus status = null;


            try
            {
                // Read the record.
                Quest.Services.Dbio.MasterPricing.Databases _database = null;
                status = read(dbContext, databaseId, out _database);
                if (!questStatusDef.IsSuccess(status))
                {
                    if (bLogging)
                    {
                        DatabaseLog databaseLog = new DatabaseLog();
                        databaseLog.Name  = "Database.Id=" + databaseId.Id;
                        databaseLog.Event = "DELETE";
                        databaseLog.Data  = status.ToString();
                        DatabaseLogId databaseLogId = null;
                        _dbDatabaseLogsMgr.Create(databaseLog, out databaseLogId);
                    }
                    return(status);
                }

                // Delete the record.
                dbContext.Databases.Remove(_database);
                dbContext.SaveChanges();
            }
            catch (DbEntityValidationException ex)
            {
                var    errorMessages    = ex.EntityValidationErrors.SelectMany(x => x.ValidationErrors).Select(x => x.ErrorMessage);
                String fullErrorMessage = string.Join("; ", errorMessages);
                String exceptionMessage = string.Concat(ex.Message, fullErrorMessage);
                status = new questStatus(Severity.Fatal, String.Format("EXCEPTION: {0}.{1}: {2}",
                                                                       this.GetType().Name, MethodBase.GetCurrentMethod().Name,
                                                                       exceptionMessage));
                LogException(ex, status);
                return(status);
            }
            catch (System.Exception ex)
            {
                status = new questStatus(Severity.Fatal, String.Format("EXCEPTION: {0}.{1}: {2}",
                                                                       this.GetType().Name, MethodBase.GetCurrentMethod().Name,
                                                                       ex.InnerException != null ? ex.InnerException.Message : ex.Message));
                LogException(ex, status);
                return(status);
            }
            status = new questStatus(Severity.Success, "Database successfully deleted.  Database.Id=" + databaseId.Id);
            if (bLogging)
            {
                DatabaseLog databaseLog = new DatabaseLog();
                databaseLog.Name  = "Database.Id=" + databaseId.Id;
                databaseLog.Event = "DELETE";
                databaseLog.Data  = status.ToString();
                DatabaseLogId databaseLogId = null;
                _dbDatabaseLogsMgr.Create(databaseLog, out databaseLogId);
            }
            return(status);
        }
コード例 #2
0
        /*==================================================================================================================================
        * Public Methods
        *=================================================================================================================================*/
        public questStatus Create(Quest.Functional.MasterPricing.Database database, out Quest.Functional.MasterPricing.DatabaseId databaseId)
        {
            // Initialize
            questStatus status = null;

            databaseId = null;


            // Data rules.


            // Create the database
            using (MasterPricingEntities dbContext = new MasterPricingEntities())
            {
                status = create(dbContext, database, out databaseId);
                if (bLogging)
                {
                    DatabaseLog databaseLog = new DatabaseLog();
                    databaseLog.Name  = database.Name == null ? "(null)" : database.Name;
                    databaseLog.Event = "CREATE";
                    databaseLog.Data  = status.ToString();
                    DatabaseLogId databaseLogId = null;
                    _dbDatabaseLogsMgr.Create(databaseLog, out databaseLogId);
                }
                if (!questStatusDef.IsSuccess(status))
                {
                    return(status);
                }
            }
            return(new questStatus(Severity.Success));
        }
コード例 #3
0
        public questStatus Update(DbMgrTransaction trans, Quest.Functional.MasterPricing.Database database)
        {
            // Initialize
            questStatus status             = null;
            bool        bCreateTransaction = trans == null;


            // Perform update in this transaction.
            status = update((MasterPricingEntities)trans.DbContext, database);
            if (bLogging)
            {
                DatabaseLog databaseLog = new DatabaseLog();
                databaseLog.Name  = database.Name == null ? "(null)" : database.Name;
                databaseLog.Event = "UPDATE";
                databaseLog.Data  = status.ToString();
                DatabaseLogId databaseLogId = null;
                _dbDatabaseLogsMgr.Create(databaseLog, out databaseLogId);
            }
            if (!questStatusDef.IsSuccess(status))
            {
                RollbackTransaction(trans);
                return(status);
            }
            return(new questStatus(Severity.Success));
        }
コード例 #4
0
        /*==================================================================================================================================
        * Public Methods
        *=================================================================================================================================*/

        #region Logging

        /*----------------------------------------------------------------------------------------------------------------------------------
        * Logging
        *---------------------------------------------------------------------------------------------------------------------------------*/
        public questStatus LogDatabaseEvent(DatabaseLog databaseLog)
        {
            // TODO: REFACTOR USING DbLogsMgr


            // Initialize
            questStatus status = null;


            // Check if logging on.
            if (!this._logSetting.bLogDatabases)
            {
                return(new questStatus(Severity.Warning, "Database Logging OFF"));
            }


            // Log event
            DatabaseLogId databaseLogId = null;

            status = _dbDatabaseLogsMgr.Create(databaseLog, out databaseLogId);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }
            databaseLog.Id = databaseLogId.Id;


            return(new questStatus(Severity.Success));
        }
コード例 #5
0
        public questStatus Delete(DeleteLogItemsViewModel deleteLogItemsViewModel)
        {
            // Initialize
            questStatus status = null;


            // Build id list
            List <DatabaseLogId> databaseLogIdList = new List <DatabaseLogId>();

            foreach (BaseId baseId in deleteLogItemsViewModel.Items)
            {
                DatabaseLogId databaseLogId = new DatabaseLogId(baseId.Id);
                databaseLogIdList.Add(databaseLogId);
            }

            // Delete items
            DatabaseLogsMgr databaseLogsMgr = new DatabaseLogsMgr(this.UserSession);

            status = databaseLogsMgr.Delete(databaseLogIdList);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }
            return(new questStatus(Severity.Success));
        }
コード例 #6
0
        private questStatus update(MasterPricingEntities dbContext, Quest.Functional.Logging.DatabaseLog databaseLog)
        {
            // Initialize
            questStatus status = null;


            try
            {
                // Read the record.
                DatabaseLogId databaseLogId = new DatabaseLogId(databaseLog.Id);
                Quest.Services.Dbio.MasterPricing.DatabaseLogs _databaseLog = null;
                status = read(dbContext, databaseLogId, out _databaseLog);
                if (!questStatusDef.IsSuccess(status))
                {
                    return(status);
                }

                // Update the record.
                BufferMgr.TransferBuffer(databaseLog, _databaseLog);
                dbContext.SaveChanges();
            }
            catch (System.Exception ex)
            {
                return(new questStatus(Severity.Fatal, String.Format("EXCEPTION: {0}.{1}: {2}",
                                                                     this.GetType().Name, MethodBase.GetCurrentMethod().Name,
                                                                     ex.InnerException != null ? ex.InnerException.Message : ex.Message)));
            }
            return(new questStatus(Severity.Success));
        }
コード例 #7
0
        /*----------------------------------------------------------------------------------------------------------------------------------
        * DatabaseLogs
        *---------------------------------------------------------------------------------------------------------------------------------*/
        private questStatus create(MasterPricingEntities dbContext, Quest.Functional.Logging.DatabaseLog databaseLog, out DatabaseLogId databaseLogId)
        {
            // Initialize
            databaseLogId = null;


            // Initialize
            databaseLog.UserSessionId = this.UserSession.Id;
            databaseLog.Username      = this.UserSession.User.Username;
            databaseLog.Created       = DateTime.Now;


            // Perform create
            try
            {
                Quest.Services.Dbio.MasterPricing.DatabaseLogs _databaseLog = new Quest.Services.Dbio.MasterPricing.DatabaseLogs();
                BufferMgr.TransferBuffer(databaseLog, _databaseLog);
                dbContext.DatabaseLogs.Add(_databaseLog);
                dbContext.SaveChanges();
                if (_databaseLog.Id == 0)
                {
                    return(new questStatus(Severity.Error, "Quest.Functional.Logging.DatabaseLog not created"));
                }
                databaseLogId = new DatabaseLogId(_databaseLog.Id);
            }
            catch (System.Exception ex)
            {
                return(new questStatus(Severity.Fatal, String.Format("EXCEPTION: {0}.{1}: {2}",
                                                                     this.GetType().Name, MethodBase.GetCurrentMethod().Name,
                                                                     ex.InnerException != null ? ex.InnerException.Message : ex.Message)));
            }
            return(new questStatus(Severity.Success));
        }