/// <summary> /// Agrega la publicación recibida por parámetro a todos los barcos que la tengan. Recibe idBarcos que son todos los id de barcos que la tienen. /// </summary> /// <param name="idBarcos"></param> /// <param name="pub"></param> public static void AgregarPublicacionesABarcos(int[] idBarcos, Publicacion pub) { try { for (int i = 0; i < Stock.Barcos.Count; i++) { pub.obtenenerIdBarcos(idBarcos); foreach (Barco barquito in Stock.Barcos) { if (pub.idBarcosPublicaciones[i] == barquito.IdBarco) { barquito.publicaciones.Add(pub); } } } } catch (Exception e) { } }
/// <summary> /// Lectura según listado /// </summary> /// <param name="publicacionesStock"></param> public static void LeerPublicaciones(List <Publicacion> publicacionesStock) { Conectarse(); publicacionesStock.Clear(); Publicacion publicacion; conexion.Open(); comando.CommandText = "SELECT * FROM dbo.publicacionesStock"; SqlDataReader myReader = comando.ExecuteReader(); try { while (myReader.Read()) { publicacion = new Publicacion( Convert.ToInt32(myReader["Tomos"]), (Publicacion.Formato)Enum.Parse(typeof(Publicacion.Formato), myReader["eFormato"].ToString()), myReader["Titulo"].ToString(), Convert.ToInt32(myReader["Edicion"]), myReader["Editor"].ToString(), myReader["Codigo"].ToString(), Convert.ToInt32(myReader["Cantidad"])); publicacionesStock.Add(publicacion); string[] words = ((myReader["IdBarcos"]).ToString()).Split(','); int[] idBarcosPublicaciones = new int[words.Length]; for (int i = 0; i < words.Length; i++) { idBarcosPublicaciones[i] = Convert.ToInt32(words[i]); } publicacion.obtenenerIdBarcos(idBarcosPublicaciones); Controller.AgregarPublicacionesABarcos(idBarcosPublicaciones, publicacion); } } catch (Exception e) { throw e; } finally { myReader.Close(); conexion.Close(); } }