Hola estoy haciendo una aplicación en c# que utiliza una bd creada con access. Quiero hacer un codigo de prueba para ver si me doy conectao bien y parece ser que no. Miren el codigo es el siguiente:
Esa clase me la he creado yo y ahora en el Form 1 en este método tengo esto:
He estado traceando y parece ser que va pasando bien po todo el codigo pero dentro del método mostrar() no entra dentro del foreach y por eso no me muestra el messageBox. ¿Que estoy haciendo mal?.
Decir que mi base de datos en access se llama Base_De_Datos_Das.accdb y tiene dos tablas, Artículos (con datos) y Clientes (vacia de momento).
Un saludo
			Código [Seleccionar] 
public class BD
        {
            DataSet myDataSet;
            string AccessCon;
            OleDbConnection myAccessCon;
            public BD()
            {
                myAccessCon = null;
                AccessCon = "Provider=Microsoft.Jet.OLEDB.12.0;Data Source=C:\\Documents and Settings\\F3RN1\\Mis documentos\\Base_de_Datos_DAS.accdb";
                myDataSet = new DataSet();
            }
            public void conexion()
            {
                try
                {
                    myAccessCon = new OleDbConnection(AccessCon);
                }
                catch (Exception ex)
                {
                    Console.WriteLine("Error: No se pudo establecer la conexión con la Base de Datos. \n{0}", ex.Message);
                    return;
                }
            }
            public void recuperar(String sentencia, String tabla)
            {
                try
                {
                    OleDbCommand myAccessCommand = new OleDbCommand(sentencia, myAccessCon);
                    
                    OleDbDataAdapter myDataAdapter = new OleDbDataAdapter(myAccessCommand);
                    myAccessCon.Open();
                    myDataAdapter.Fill(myDataSet, tabla);
                }
                catch (Exception ex)
                {
                    Console.WriteLine("Error: Fallo al recuperar los datos desde la Base de Datos.\n{0}", ex.Message);
                    return;
                }
                finally
                {
                    myAccessCon.Close();
                  
                }
            }
            public void mostrar()
            {
             
                DataTableCollection dta = myDataSet.Tables;
                foreach (DataTable dt in dta)
                {
                    
                    //Console.WriteLine("Encontrada la Tabla {0}", dt.TableName);
                    MessageBox.Show("Encontrada la Tabla {0}", dt.TableName);
                }
                
            }
        }Esa clase me la he creado yo y ahora en el Form 1 en este método tengo esto:
Código [Seleccionar] 
private void porNºClienteToolStripMenuItem_Click(object sender, EventArgs e)
        {
            baseD = new BD();
            baseD.conexion();
            baseD.recuperar("Select * from Articulos","Articulos");
            baseD.mostrar();
He estado traceando y parece ser que va pasando bien po todo el codigo pero dentro del método mostrar() no entra dentro del foreach y por eso no me muestra el messageBox. ¿Que estoy haciendo mal?.
Decir que mi base de datos en access se llama Base_De_Datos_Das.accdb y tiene dos tablas, Artículos (con datos) y Clientes (vacia de momento).
Un saludo








