/// <summary> /// Saves this instance. /// </summary> /// <returns></returns> public static bool SaveOrUpdate(IssueType entity) { if (entity == null) throw new ArgumentNullException("entity"); if (entity.ProjectId <= Globals.NEW_ID) throw (new ArgumentException("Cannot save issue type, the project id is invalid")); if (string.IsNullOrEmpty(entity.Name)) throw (new ArgumentException("The issue type name cannot be empty or null")); if (entity.Id > Globals.NEW_ID) return DataProviderManager.Provider.UpdateIssueType(entity); var tempId = DataProviderManager.Provider.CreateNewIssueType(entity); if (tempId <= 0) return false; entity.Id = tempId; return true; }
/// <summary> /// Adds the status. /// </summary> /// <param name="s">The s.</param> /// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param> protected void AddIssueType(Object s, EventArgs e) { var newName = txtName.Text.Trim(); if (newName == String.Empty) return; var newIssueType = new IssueType { ProjectId = ProjectId, Name = newName, ImageUrl = lstImages.SelectedValue}; if (IssueTypeManager.SaveOrUpdate(newIssueType)) { txtName.Text = ""; BindIssueType(); lstImages.SelectedValue = String.Empty; } else { ActionMessage.ShowErrorMessage(LoggingManager.GetErrorMessageResource("SaveIssueTypeError")); } }
/// <summary> /// Updates the type of the issue. /// </summary> /// <param name="issueTypeToUpdate">The issue type to update.</param> /// <returns></returns> public override bool UpdateIssueType(IssueType issueTypeToUpdate) { // Validate Parameters if (issueTypeToUpdate == null) throw (new ArgumentNullException("issueTypeToUpdate")); using (var sqlCmd = new SqlCommand()) { AddParamToSqlCmd(sqlCmd, "@ReturnValue", SqlDbType.Int, 0, ParameterDirection.ReturnValue, null); AddParamToSqlCmd(sqlCmd, "@IssueTypeId", SqlDbType.Int, 0, ParameterDirection.Input, issueTypeToUpdate.Id); AddParamToSqlCmd(sqlCmd, "@SortOrder", SqlDbType.Int, 0, ParameterDirection.Input, issueTypeToUpdate.SortOrder); AddParamToSqlCmd(sqlCmd, "@ProjectId", SqlDbType.Int, 0, ParameterDirection.Input, issueTypeToUpdate.ProjectId); AddParamToSqlCmd(sqlCmd, "@IssueTypeName", SqlDbType.NText, 50, ParameterDirection.Input, issueTypeToUpdate.Name); AddParamToSqlCmd(sqlCmd, "@IssueTypeImageUrl", SqlDbType.NText, 50, ParameterDirection.Input, issueTypeToUpdate.ImageUrl); SetCommandType(sqlCmd, CommandType.StoredProcedure, SP_ISSUETYPE_UPDATE); ExecuteScalarCmd(sqlCmd); return ((int)sqlCmd.Parameters["@ReturnValue"].Value == 0); } }
public abstract bool UpdateIssueType(IssueType issueTypeToUpdate);
public abstract int CreateNewIssueType(IssueType issueTypeToCreate);