Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/04/2007, 11:47
Davideslapoya
 
Fecha de Ingreso: julio-2006
Mensajes: 79
Antigüedad: 17 años, 10 meses
Puntos: 0
Ayuda, ayuda con vs 2005 ¡¡SOCORRO!!

Hola buenas
Vereis tengo un problema a sacar unos datos de access, uso vs 2005 con c# los problemas son:
En el Load() llamo a una funcion que me listara todos los registros de la tabla
System.Collections.ArrayList arrCole = objeto.ListarTodos();
Esta funcion accede a
public override System.Collections.ArrayList ListarTodos()
{
Films ob = null;
System.Collections.ArrayList miColeccion = new System.Collections.ArrayList();
sql = "select referencia from Peliculas_comprimidas order by titulo asc";
comando.CommandText = sql;
comando.Connection = cn;
cn.Open();
reader = comando.ExecuteReader();
//cmd = db.GetSqlStringCommand(sql);
//reader = db.ExecuteReader(cmd);
while (reader.Read())
{
miColeccion.Add(ob=new Films(reader.GetInt32(0)));
//añado la referencia y el objeto, previemente lo construyo
}

cn.Close();
return miColeccion;
y la clase Films contiene

public Films (int key)
{


sql = "select titulo,video,audio,formato,promocional,discos,come ntarios,multi from Peliculas_comprimidas where referencia=" + key;
comando.CommandText = sql;
comando.Connection = cn;
cn.Open();
reader = comando.ExecuteReader();
// cmd = db.GetSqlStringCommand(sql);

//db.AddInParameter(cmd, "referencia", System.Data.DbType.UInt32);
//reader = db.ExecuteReader(cmd);
if (reader.Read())
{
ref_table = key;
Titulo = reader.GetString(0);
videos = new Videos(reader.GetInt32(1));
audios = new Audios(reader.GetInt32(2));
compresion = new Formatos(reader.GetInt32(3));
promo = reader.GetBoolean(4);
if (promo == false)
cad = "No";
else
cad = "Si";
cantidad = reader.GetInt32(5);
//Object var = reader.GetString (6);
//if (reader.GetValue(6) == "{}" )
// comentarios = "";

//else
// comentarios = (string)reader.GetValue(6);


multi = new MultiFilms (key);

}
cn.Close();
Y me saca bien los registros hasta la 62 vez donde falla en el constructor de Videos, y obiamente esto esta bien porque me lo hace hasta la 62 vez que entra
Cuando falla, falla en la conexión, cuando abre la conexión
try
{
sql = "select video_desc from videos_comprimibles where video_id=" + identificador;
comando.CommandText = sql;
comando.Connection = cn;
cn.Open();
reader = comando.ExecuteReader();
while (reader.Read())
{
video_id = identificador;
video_desc = reader.GetString(0);
}
}
catch (OleDbException exbd)
{
cn.Close();
throw new Exception("" + exbd.Message);
}
catch (Exception ex)
{
cn.Close();
throw new Exception("Error:" + ex.Message);
}
cn.Close();
Me da un error de oledb o sea que pasa por este catch y me dice “Error no especificado”
Aver si me podeis ecchar un cable, es muy importante es un proyecto que estoy haciendo y hace unos dias me empezo a darme errores