コード例 #1
0
ファイル: LocationDAL.cs プロジェクト: hoangbktech/bhl-bits
        public void Save(SqlConnection sqlConnection, SqlTransaction sqlTransaction, Location location)
        {
            SqlConnection connection = sqlConnection;
            SqlTransaction transaction = sqlTransaction;

            if (connection == null)
            {
                connection =
                    CustomSqlHelper.CreateConnection(CustomSqlHelper.GetConnectionStringFromConnectionStrings("BHL"));
            }

            bool isTransactionCoordinator = CustomSqlHelper.IsTransactionCoordinator(transaction);

            try
            {
                transaction = CustomSqlHelper.BeginTransaction(connection, transaction, isTransactionCoordinator);

                new LocationDAL().LocationManageAuto(connection, transaction, location);

                CustomSqlHelper.CommitTransaction(transaction, isTransactionCoordinator);
            }
            catch (Exception ex)
            {
                CustomSqlHelper.RollbackTransaction(transaction, isTransactionCoordinator);

                throw new Exception("Exception in Save", ex);
            }
            finally
            {
                CustomSqlHelper.CloseConnection(connection, isTransactionCoordinator);
            }
        }
コード例 #2
0
        protected void saveButton_Click(object sender, EventArgs e)
        {
            if (validate())
            {
                if (hidCode.Value.Length == 0)
                {
                    errorControl.AddErrorText("Please select a location before saving");
                    errorControl.Visible = true;
                    return;
                }

                Location location = new Location();
                location.LocationName = hidCode.Value;
                location.Latitude = (latitudeTextBox.Text.Trim() == String.Empty) ? null : latitudeTextBox.Text.Trim();
                location.Longitude = (longitudeTextBox.Text.Trim() == String.Empty) ? null : longitudeTextBox.Text.Trim();
                if (location.Latitude != null || longitudeTextBox != null)
                {
                    location.NextAttemptDate = null;
                }
                else
                {
                    location.NextAttemptDate = (nextAttemptLiteral.Text == String.Empty ? location.NextAttemptDate : Convert.ToDateTime(nextAttemptLiteral.Text));
                }
                location.IncludeInUI = includeInUICheckbox.Checked;
                location.LastModifiedDate = DateTime.Now;

                location.IsNew = false;

                BHLProvider bp = new BHLProvider();
                bp.SaveLocation(location);
            }
            else
            {
                return;
            }

            Response.Redirect("/Admin/LocationEdit.aspx");
        }
コード例 #3
0
 /// <summary>
 /// Update values in Location. Returns an object of type Location.
 /// </summary>
 /// <param name="sqlConnection">Sql connection or null.</param>
 /// <param name="sqlTransaction">Sql transaction or null.</param>
 /// <param name="connectionKeyName">Connection key name located in config file.</param>
 /// <param name="value">Object of type Location.</param>
 /// <returns>Object of type Location.</returns>
 public Location LocationUpdateAuto(
     SqlConnection sqlConnection,
     SqlTransaction sqlTransaction,
     string connectionKeyName,
     Location value)
 {
     return LocationUpdateAuto(sqlConnection, sqlTransaction, connectionKeyName,
         value.LocationName,
         value.Latitude,
         value.Longitude,
         value.NextAttemptDate,
         value.IncludeInUI);
 }
コード例 #4
0
 /// <summary>
 /// Update values in Location. Returns an object of type Location.
 /// </summary>
 /// <param name="sqlConnection">Sql connection or null.</param>
 /// <param name="sqlTransaction">Sql transaction or null.</param>
 /// <param name="value">Object of type Location.</param>
 /// <returns>Object of type Location.</returns>
 public Location LocationUpdateAuto(
     SqlConnection sqlConnection,
     SqlTransaction sqlTransaction,
     Location value)
 {
     return LocationUpdateAuto(sqlConnection, sqlTransaction, "BHL", value );
 }
コード例 #5
0
        /// <summary>
        /// Manage Location object.
        /// If the object is of type CustomObjectBase, 
        /// then either insert values into, delete values from, or update values in Location.
        /// </summary>
        /// <param name="sqlConnection">Sql connection or null.</param>
        /// <param name="sqlTransaction">Sql transaction or null.</param>
        /// <param name="connectionKeyName">Connection key name located in config file.</param>
        /// <param name="value">Object of type Location.</param>
        /// <returns>Object of type CustomDataAccessStatus<Location>.</returns>
        public CustomDataAccessStatus<Location> LocationManageAuto(
            SqlConnection sqlConnection,
            SqlTransaction sqlTransaction,
            string connectionKeyName,
            Location value)
        {
            if (value.IsNew && !value.IsDeleted)
            {

                Location returnValue = LocationInsertAuto(sqlConnection, sqlTransaction, connectionKeyName,
                    value.LocationName,
                        value.Latitude,
                        value.Longitude,
                        value.NextAttemptDate,
                        value.IncludeInUI);

                return new CustomDataAccessStatus<Location>(
                    CustomDataAccessContext.Insert,
                    true, returnValue);
            }
            else if (!value.IsNew && value.IsDeleted)
            {
                if (LocationDeleteAuto(sqlConnection, sqlTransaction, connectionKeyName,
                    value.LocationName))
                {
                return new CustomDataAccessStatus<Location>(
                    CustomDataAccessContext.Delete,
                    true, value);
                }
                else
                {
                return new CustomDataAccessStatus<Location>(
                    CustomDataAccessContext.Delete,
                    false, value);
                }
            }
            else if (value.IsDirty && !value.IsDeleted)
            {

                Location returnValue = LocationUpdateAuto(sqlConnection, sqlTransaction, connectionKeyName,
                    value.LocationName,
                        value.Latitude,
                        value.Longitude,
                        value.NextAttemptDate,
                        value.IncludeInUI);

                return new CustomDataAccessStatus<Location>(
                    CustomDataAccessContext.Update,
                    true, returnValue);
            }
            else
            {
                return new CustomDataAccessStatus<Location>(
                    CustomDataAccessContext.NA,
                    false, value);
            }
        }
コード例 #6
0
 /// <summary>
 /// Manage Location object.
 /// If the object is of type CustomObjectBase, 
 /// then either insert values into, delete values from, or update values in Location.
 /// </summary>
 /// <param name="sqlConnection">Sql connection or null.</param>
 /// <param name="sqlTransaction">Sql transaction or null.</param>
 /// <param name="value">Object of type Location.</param>
 /// <returns>Object of type CustomDataAccessStatus<Location>.</returns>
 public CustomDataAccessStatus<Location> LocationManageAuto(
     SqlConnection sqlConnection,
     SqlTransaction sqlTransaction,
     Location value)
 {
     return LocationManageAuto( sqlConnection, sqlTransaction, "BHL", value  );
 }
コード例 #7
0
 public void SaveLocation(Location location)
 {
     GetLocationDalInstance().Save(null, null, location);
 }
コード例 #8
0
        private void fillLocations()
        {
            BHLProvider bp = new BHLProvider();
            CustomGenericList<Location> locations = bp.LocationSelectAll();

            Location emptyLocation = new Location();
            emptyLocation.LocationName = String.Empty;
            emptyLocation.Latitude = String.Empty;
            emptyLocation.Longitude = String.Empty;
            emptyLocation.NextAttemptDate = DateTime.Now;
            emptyLocation.IncludeInUI = true;

            locations.Insert(0, emptyLocation);

            ddlLocations.DataSource = locations;
            ddlLocations.DataTextField = "LocationName";
            ddlLocations.DataValueField = "LocationName";
            ddlLocations.DataBind();
        }