/// <summary> /// Inserta las estadisticas de la partida en la base de datos. /// </summary> /// <param name="stats">Stadisticas de la partida</param> /// <returns> Numero de filas afectadas</returns> public int insertarStats_DAL(ClsStats stats) { int filas = 0; ClsMyConnection gestConexion = new ClsMyConnection(); SqlConnection conexion = gestConexion.getConnection(); SqlCommand miComando = new SqlCommand(); //Definir los parametros del comando miComando.CommandText = "INSERT INTO stats(name, score) values (@nombre, @puntos)"; //Añadimos los parametros if (stats.Name != "") { miComando.Parameters.Add("@nombre", SqlDbType.VarChar).Value = stats.Name; } else { miComando.Parameters.Add("@nombre", SqlDbType.Int).Value = "null"; } miComando.Parameters.Add("@puntos", SqlDbType.VarChar).Value = stats.Score; miComando.Connection = conexion; filas = miComando.ExecuteNonQuery(); //Cerramos la conexion gestConexion.closeConnection(ref conexion); return(filas); }
/// <summary> /// Inserta las estadisticas de la partida en la base de datos. /// </summary> /// <param name="stats">Estadisticas de la partida</param> /// <returns> Numero de filas afectadas</returns> public int insertarStats_BL(ClsStats stats) { int filas = 0; ClsHandlerDAL manejadora = new ClsHandlerDAL(); try { filas = manejadora.insertarStats_DAL(stats); } catch (Exception e) { } return(filas); }
/// <summary> /// Obtiene un listado de un tamaño concreto de las estadisticas de los jugadores /// </summary> /// <param name="numJugadores">Numero de jugadores que componen la lista</param> /// <returns>Listado de estadisticas</returns> public List <ClsStats> listadoStats(int numJugadores) { List <ClsStats> listado = new List <ClsStats>(); ClsMyConnection connection = new ClsMyConnection(); SqlConnection conn = connection.getConnection(); SqlCommand miComando = new SqlCommand(); SqlDataReader miLector = null; ClsStats oStats; try{ miComando.CommandText = "SELECT TOP " + numJugadores + " * FROM stats ORDER BY score DESC"; //Intenté parametrizar esta consulta pero el TOP daba problemas al hacerlo (no funcionaba a secas) miComando.Connection = conn; miLector = miComando.ExecuteReader(); //Si hay lineas en el lector if (miLector.HasRows) { while (miLector.Read()) { oStats = new ClsStats(); oStats.Name = (miLector["name"] is DBNull) ? "Anonimo" : (string)miLector["name"]; oStats.Score = (int)miLector["score"]; listado.Add(oStats); } } }catch (Exception exSql) { throw exSql; }finally{ if (miLector != null) { miLector.Close(); } if (conn != null) { connection.closeConnection(ref conn); } } return(listado); }
public ClsPantallaFinalVM() { estadisticas = new ClsStats(); }