public AbilityDefinition(AbilityName ability, string description, string[] provides, string[] requires) : this() { this.aname = ability; this.name = ability.ToString().ToUpperInvariant(); this.description = description; if (provides != null) { foreach (string provide in provides) { this.Provide(provide); } } if (requires != null) { foreach (string require in requires) { this.Provide(require); } } }
/// <summary> /// Saves the Ability object. /// </summary> /// <returns>Ability Object</returns> public Ability SaveAbility() { SqlDataReader result; DatabaseConnection dbconn = new DatabaseConnection(); SqlCommand command = new SqlCommand(); SqlConnection connection = new SqlConnection(dbconn.SQLSEVERConnString); try { connection.Open(); command.Connection = connection; command.CommandType = CommandType.StoredProcedure; command.CommandText = "InsertUpdate_Ability"; command.Parameters.Add(dbconn.GenerateParameterObj("@AbilityID", SqlDbType.Int, AbilityID.ToString(), 0)); command.Parameters.Add(dbconn.GenerateParameterObj("@AbilityName", SqlDbType.VarChar, AbilityName.ToString(), 100)); command.Parameters.Add(dbconn.GenerateParameterObj("@SortOrder", SqlDbType.Int, SortOrder.ToString(), 0)); result = command.ExecuteReader(); result.Read(); SetReaderToObject(ref result); } catch { Exception e = new Exception(); this._insertUpdateOK = false; this._insertUpdateMessage.Append(e.Message.ToString()); throw e; } finally { command.Dispose(); connection.Close(); } return(this); }