/// <summary> /// Saves this instance. /// </summary> /// <param name="entity">The custom field to save.</param> /// <returns></returns> public static bool SaveOrUpdate(UserCustomField entity) { if (entity == null) throw new ArgumentNullException("entity"); if (string.IsNullOrEmpty(entity.Name)) throw (new ArgumentException("The custom field name cannot be empty or null")); if (entity.Id > Globals.NEW_ID) if (DataProviderManager.Provider.UpdateUserCustomField(entity)) { UpdateCustomFieldView(); return true; } var tempId = DataProviderManager.Provider.CreateNewUserCustomField(entity); if (tempId <= 0) return false; entity.Id = tempId; UpdateCustomFieldView(); return true; }
public override bool UpdateUserCustomField(UserCustomField customFieldToUpdate) { if (customFieldToUpdate == null) throw new ArgumentNullException("customFieldToUpdate"); using (var sqlCmd = new SqlCommand()) { AddParamToSqlCmd(sqlCmd, "@ReturnValue", SqlDbType.Int, 0, ParameterDirection.ReturnValue, null); AddParamToSqlCmd(sqlCmd, "@CustomFieldId", SqlDbType.Int, 0, ParameterDirection.Input, customFieldToUpdate.Id); AddParamToSqlCmd(sqlCmd, "@CustomFieldName", SqlDbType.NText, 50, ParameterDirection.Input, customFieldToUpdate.Name); AddParamToSqlCmd(sqlCmd, "@CustomFieldDataType", SqlDbType.Int, 0, ParameterDirection.Input, customFieldToUpdate.DataType);; AddParamToSqlCmd(sqlCmd, "@CustomFieldRequired", SqlDbType.Bit, 0, ParameterDirection.Input, customFieldToUpdate.Required); AddParamToSqlCmd(sqlCmd, "@CustomFieldTypeId", SqlDbType.Int, 0, ParameterDirection.Input, (int)customFieldToUpdate.FieldType); SetCommandType(sqlCmd, CommandType.StoredProcedure, SP_USERCUSTOMFIELD_UPDATE); ExecuteScalarCmd(sqlCmd); return ((int)sqlCmd.Parameters["@ReturnValue"].Value == 0); } }
public override int CreateNewUserCustomField(UserCustomField newCustomField) { if (newCustomField == null) throw new ArgumentNullException("newCustomField"); using (var sqlCmd = new SqlCommand()) { AddParamToSqlCmd(sqlCmd, "@ReturnValue", SqlDbType.Int, 0, ParameterDirection.ReturnValue, null); AddParamToSqlCmd(sqlCmd, "@CustomFieldName", SqlDbType.NText, 50, ParameterDirection.Input, newCustomField.Name); AddParamToSqlCmd(sqlCmd, "@CustomFieldDataType", SqlDbType.Int, 0, ParameterDirection.Input, newCustomField.DataType); AddParamToSqlCmd(sqlCmd, "@CustomFieldRequired", SqlDbType.Bit, 0, ParameterDirection.Input, newCustomField.Required); AddParamToSqlCmd(sqlCmd, "@CustomFieldTypeId", SqlDbType.Int, 0, ParameterDirection.Input, (int)newCustomField.FieldType); SetCommandType(sqlCmd, CommandType.StoredProcedure, SP_USERCUSTOMFIELD_CREATE); ExecuteScalarCmd(sqlCmd); return ((int)sqlCmd.Parameters["@ReturnValue"].Value); } }
public abstract bool UpdateUserCustomField(UserCustomField customFieldToUpdate);
public abstract int CreateNewUserCustomField(UserCustomField newCustomField);
/// <summary> /// Handles the Click event of the lnkAddCustomField control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="T:System.EventArgs"/> instance containing the event data.</param> protected void lnkAddCustomField_Click(object sender, EventArgs e) { var newName = txtName.Text.Trim(); if (newName == String.Empty) return; var dataType = (ValidationDataType)Enum.Parse(typeof(ValidationDataType), dropDataType.SelectedValue); var fieldType = (CustomFieldType)Enum.Parse(typeof(CustomFieldType), rblCustomFieldType.SelectedValue); var required = chkRequired.Checked; var newCustomField = new UserCustomField { Name = newName, DataType = dataType, Required = required, FieldType = fieldType }; if (UserCustomFieldManager.SaveOrUpdate(newCustomField)) { txtName.Text = ""; dropDataType.SelectedIndex = 0; chkRequired.Checked = false; BindCustomFields(); } else { lblError.Text = LoggingManager.GetErrorMessageResource("SaveCustomFieldError"); } }