public List <SiegeDefenseDeck> ListarDefenseDecks(long idSiege) { List <SiegeDefenseDeck> objRetorno = new List <SiegeDefenseDeck>(); SqlConnection conexao = new SqlConnection(); SqlCommand command = new SqlCommand(); conexao.ConnectionString = BLO.Conexao.ObterStringConexao2(); StringBuilder select = new StringBuilder(); select.AppendLine("SET DATEFORMAT dmy; "); select.AppendLine("SELECT a.ID, a.IDDECK, a.IDSIEGE, a.IDPLAYER, a.IDGUILD, b.idsiege codsiege,b.idmatch "); select.AppendLine("FROM DBO.SIEGEDEFENSEDECK a "); select.AppendLine("inner join dbo.Siege b on b.id = a.IdSiege "); select.AppendLine("where a.IDSIEGE = @idSiege "); command.Parameters.Add(new SqlParameter("@idSiege", System.Data.SqlDbType.BigInt)); command.Parameters["@idSiege"].Value = idSiege; command.CommandText = select.ToString(); command.CommandType = System.Data.CommandType.Text; conexao.Open(); command.Connection = conexao; SqlDataReader reader = command.ExecuteReader(); SiegeDefenseDeck objDefense; while (reader.Read()) { objDefense = new SiegeDefenseDeck(); objDefense.Id = long.Parse(reader["ID"].ToString()); objDefense.IdDeck = long.Parse(reader["IDDECK"].ToString()); objDefense.IdGuild = long.Parse(reader["IDGUILD"].ToString()); objDefense.IdPlayer = long.Parse(reader["IDPLAYER"].ToString()); objDefense.IdSiege = long.Parse(reader["IDSIEGE"].ToString()); objDefense.Siege = new Siege() { Id = long.Parse(reader["IDSIEGE"].ToString()), IdSiege = long.Parse(reader["codsiege"].ToString()), IdMatch = long.Parse(reader["idmatch"].ToString()) }; objRetorno.Add(objDefense); } conexao.Close(); conexao.Dispose(); return(objRetorno); }
public void InsertDefenseDeck(SiegeDefenseDeck obj) { SqlConnection conexao = new SqlConnection(); SqlCommand command = new SqlCommand(); conexao.ConnectionString = BLO.Conexao.ObterStringConexao2(); StringBuilder select = new StringBuilder(); select.AppendLine("SET DATEFORMAT dmy;"); select.AppendLine("MERGE DBO.SiegeDefenseDeck AS TARGET "); select.AppendLine("USING(SELECT @IdDeck AS IdDeck, @IdSiege as IdSiege, @IdPlayer as IdPlayer, @IdGuild as IdGuild) AS SOURCE "); select.AppendLine("ON TARGET.IdDeck = SOURCE.IdDeck and "); select.AppendLine("Target.IdSiege = SOURCE.IdSiege and "); select.AppendLine("Target.IdPlayer = SOURCE.IdPlayer and "); select.AppendLine("Target.IdGuild = SOURCE.IdGuild "); select.AppendLine("WHEN NOT MATCHED BY TARGET THEN "); select.AppendLine("INSERT(IdDeck, IdSiege, IdPlayer, IdGuild) "); select.AppendLine("VALUES(@IdDeck, @IdSiege, @IdPlayer, @IdGuild); "); command.Parameters.Add(new SqlParameter("@IdDeck", System.Data.SqlDbType.BigInt)); command.Parameters["@IdDeck"].Value = obj.IdDeck; command.Parameters.Add(new SqlParameter("@IdSiege", System.Data.SqlDbType.BigInt)); command.Parameters["@IdSiege"].Value = obj.IdSiege; command.Parameters.Add(new SqlParameter("@IdPlayer", System.Data.SqlDbType.BigInt)); command.Parameters["@IdPlayer"].Value = obj.IdPlayer; command.Parameters.Add(new SqlParameter("@IdGuild", System.Data.SqlDbType.BigInt)); command.Parameters["@IdGuild"].Value = obj.IdGuild; command.CommandText = select.ToString(); command.CommandType = System.Data.CommandType.Text; conexao.Open(); command.Connection = conexao; command.ExecuteNonQuery(); conexao.Close(); conexao.Dispose(); }