/// <summary> /// Sets the reader to object. /// </summary> /// <param name="result">The result.</param> private void SetReaderToObject(ref SqlDataReader result) { if (result.HasRows) { this.ModifierID = (int)result.GetValue(result.GetOrdinal("ModifierID")); this.DefenseTypeID = (int)result.GetValue(result.GetOrdinal("DefenseTypeID")); this.RaceID = (int)result.GetValue(result.GetOrdinal("RaceID")); Modifier objModifier = new Modifier(); if (!(this.ModifierID == 0)) { objModifier.GetModifier(this.ModifierID); } this.objModifier = objModifier; DefenseType objDefenseType = new DefenseType(); //List<DefenseType> DefenseTypes = new List<DefenseType>(); if (!(this.RaceID == 0)) { //DefenseTypes = objDefenseType.GetRaceDefenseTypes(" RaceID=" + this.RaceID.ToString(), ""); } this.objDefenseType = objDefenseType; } }
/// <summary> /// Gets the race defense type modifiers by race. /// </summary> /// <param name="RaceID">The race identifier.</param> /// <param name="strOrderBy">The string order by.</param> /// <returns>List of RaceDefenseTypeModifier objects</returns> public List <RaceDefenseTypeModifier> GetRaceDefenseTypeModifiersByRace(int RaceID, string strOrderBy) { //string strWhere = ""; //strWhere = " RaceID=" + RaceID.ToString() + " AND [otmRaceDefenseTypeModifier].DefenseTypeID=" + objDefenseType.DefenseTypeID.ToString(); //return GetRaceDefenseTypeModifierList("Select_RaceDefenseTypeModifier", strWhere, strOrderBy); //This one is different!!!! Have to loop through each defense type individually to get the where clause. List <DefenseType> objDefenseTypes = new List <DefenseType>(); DefenseType objDefType = new DefenseType(); objDefenseTypes = objDefType.GetRaceDefenseTypes("", ""); string strWhere = ""; List <RaceDefenseTypeModifier> raceDefenseTypeModifier = new List <RaceDefenseTypeModifier>(); try { foreach (DefenseType objDefenseType in objDefenseTypes) { SqlDataReader result; DatabaseConnection dbconn = new DatabaseConnection(); SqlCommand command = new SqlCommand(); SqlConnection connection = new SqlConnection(dbconn.SQLSEVERConnString); strWhere = " RaceID=" + RaceID.ToString() + " AND [otmRaceDefenseTypeModifier].DefenseTypeID=" + objDefenseType.DefenseTypeID.ToString(); connection.Open(); command.Connection = connection; command.CommandType = CommandType.StoredProcedure; command.CommandText = "Select_RaceDefenseTypeModifier"; command.Parameters.Add(dbconn.GenerateParameterObj("@strWhere", SqlDbType.VarChar, strWhere, 1000)); command.Parameters.Add(dbconn.GenerateParameterObj("@strOrderBy", SqlDbType.VarChar, strOrderBy, 1000)); result = command.ExecuteReader(); while (result.Read()) { RaceDefenseTypeModifier objRaceDefenseTypeModifier = new RaceDefenseTypeModifier(); SetReaderToObject(ref objRaceDefenseTypeModifier, ref result); raceDefenseTypeModifier.Add(objRaceDefenseTypeModifier); } command.Dispose(); connection.Close(); } } catch { Exception e = new Exception(); throw e; } return(raceDefenseTypeModifier); }