private bool RecordExistsCheck(
            SqlCommand cmd,
            IAccountModel model,
            TypeOfExistenceCheck typeOfExistenceCheck,
            RequestType requestType
            )
        {
            Int32 count0fRecordsFound     = 0;
            bool  recordExistsCheckPassed = true;

            DataAccessStatus dataAccessStatus = new DataAccessStatus();
            SqlCommand       cmdCheck         = new SqlCommand(null, cmd.Connection);

            cmdCheck.Prepare();

            if ((requestType == RequestType.Add) || (requestType == RequestType.ConfirmAdd))
            {
                cmdCheck.CommandText = "SELECT count(*) FROM Accounts where Username = @User";
                cmdCheck.Parameters.AddWithValue("@User", model.Username);
            }
            else if ((requestType == RequestType.Update) || (requestType == RequestType.Delete) || (requestType == RequestType.ConfirmDelete))
            {
                cmdCheck.CommandText = "SELECT count(*) FROM Accounts WHERE ID = @ID";
                cmdCheck.Parameters.AddWithValue("@ID", model.ID);
            }

            try
            {
                count0fRecordsFound = Convert.ToInt32(cmdCheck.ExecuteScalar());
            }
            catch (SqlException e)
            {
                string msg = e.Message;
                throw e;
            }

            if ((typeOfExistenceCheck == TypeOfExistenceCheck.DoesNotExistInDB) && (count0fRecordsFound > 0))
            {
                dataAccessStatus.Status = "Error";
                recordExistsCheckPassed = false;

                throw new DataAccessException(dataAccessStatus);
            }
            else if ((typeOfExistenceCheck == TypeOfExistenceCheck.DoesExistInDB) && (count0fRecordsFound == 0))
            {
                dataAccessStatus.Status = "Error";
                recordExistsCheckPassed = false;

                throw new DataAccessException(dataAccessStatus);
            }

            return(recordExistsCheckPassed);
        }
コード例 #2
0
        private bool RecordExistsCheck(SqlCommand cmd, IRoleModel roleModel, TypeOfExistenceCheck typeOfExistenceCheck,
                                       RequestType requestType)
        {
            Int32 count0fRecordsFound     = 0;
            bool  recordExistsCheckPassed = true;

            DataAccessStatus dataAccessStatus = new DataAccessStatus();
            SqlCommand       cmdCheck         = new SqlCommand(null, cmd.Connection);

            cmdCheck.Prepare();


            if ((requestType == RequestType.Add) || (requestType == RequestType.ConfirmAdd))
            {
                cmdCheck.CommandText = "SELECT count(*) FROM [Roles] where [Name] = @Name";
                cmdCheck.Parameters.Add(new SqlParameter("@Name", System.Data.SqlDbType.VarChar, 20)).Value = roleModel.Name;
            }
            else if ((requestType == RequestType.Update) || (requestType == RequestType.Delete) || (requestType == RequestType.ConfirmDelete))
            {
                cmdCheck.CommandText = "SELECT count(*) FROM [Roles] WHERE [ID] = @ID";
                cmdCheck.Parameters.Add(new SqlParameter("@ID", roleModel.ID));
            }

            try
            {
                count0fRecordsFound = Convert.ToInt32(cmdCheck.ExecuteScalar());
            }
            catch (SqlException e)
            {
                string msg = e.Message;
                throw e;
            }

            if ((typeOfExistenceCheck == TypeOfExistenceCheck.DoesNotExistInDB) && (count0fRecordsFound > 0))
            {
                dataAccessStatus.Status = "Error";
                recordExistsCheckPassed = false;

                throw new DataAccessException(dataAccessStatus);
            }
            else if ((typeOfExistenceCheck == TypeOfExistenceCheck.DoesExistInDB) && (count0fRecordsFound == 0))
            {
                dataAccessStatus.Status = "Error";
                recordExistsCheckPassed = false;

                throw new DataAccessException(dataAccessStatus);
            }

            return(recordExistsCheckPassed);
        }
コード例 #3
0
        private void RecordExistsCheck(TDomainModel model, TypeOfExistenceCheck typeOfExistenceCheck,
                                       RequestType requestType, bool checkAfterInsert = false,
                                       bool checkExist = false)
        {
            bool exists = false;

            try
            {
                switch (requestType)
                {
                //case RequestType.Insert:
                case RequestType.ConfirmInsert:

                    exists = checkAfterInsert;

                    break;

                case RequestType.Update:
                case RequestType.Delete:
                case RequestType.ConfirmDelete:
                case RequestType.GetById:

                    exists = checkExist;

                    break;
                }
            }
            catch (SqlException ex)
            {
                var dataAccessStatus = new DataAccessStatus();

                dataAccessStatus = SetDataAccessValues(ex, ErrorMessageType.Delete);
                throw new DataAccessException(message: ex.Message, innerException: ex.InnerException,
                                              dataAccessStatus: dataAccessStatus);
            }

            if ((typeOfExistenceCheck == TypeOfExistenceCheck.DoesExistInDB) && !exists)
            {
                throw new DataAccessException(new DataAccessStatus());
            }
            else if ((typeOfExistenceCheck == TypeOfExistenceCheck.DoesNotExistInDB) && exists)
            {
                throw new DataAccessException(new DataAccessStatus());
            }
        }
コード例 #4
0
        private bool RecordExistsCheck(IBarangModel barangModel, TypeOfExistenceCheck typeOfExistenceCheck, RequestType requestType)
        {
            bool exists = false;
            bool recordExistsCheckPassed = true;

            DataAccessStatus dataAccessStatus = new DataAccessStatus();

            try
            {
                if (requestType == RequestType.Add || requestType == RequestType.ConfirmAdd)
                {
                    exists = _context.Conn.ExecuteScalar <bool>("SELECT COUNT(1) from barang where nama=@nama", new { barangModel.nama });
                }
                else if (requestType == RequestType.Update || requestType == RequestType.ConfirmDelete || requestType == RequestType.Delete)
                {
                    exists = _context.Conn.ExecuteScalar <bool>("SELECT COUNT(1) from barang where id=@id", new { barangModel.id });
                }
            }
            catch (SQLiteException ex)
            {
                throw ex;
            }

            if ((typeOfExistenceCheck == TypeOfExistenceCheck.DoesExistInDB) && !exists)
            {
                dataAccessStatus.Status = "Error";
                recordExistsCheckPassed = false;

                throw new DataAccessException(dataAccessStatus);
            }
            else if ((typeOfExistenceCheck == TypeOfExistenceCheck.DoesNotExistInDB) && exists)
            {
                dataAccessStatus.Status = "Error";
                recordExistsCheckPassed = false;

                throw new DataAccessException(dataAccessStatus);
            }

            return(recordExistsCheckPassed);
        }