No hace falta que sean variables globales, simplemente variables locales en la funcion. El problema es que usas un "while", lo que indica más de un resultado y no tendría que ser así, no?
Yo lo pondría de esta forma (dejando el "bug" del while):
Código C:
Ver originalpublic string leer()
{
String ruta_bbdd = String.Empty;
String cadena_de_conexion = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\status\bbdd\status.mdb;";
OleDbConnection conexion = new OleDbConnection(cadena_de_conexion);
conexion.Open();
OleDbCommand query = new OleDbCommand("SELECT * FROM config ", conexion);
OleDbDataReader reader = query.ExecuteReader();
while(reader.Read()){
ruta_bbdd = reader.GetString(1);
Console.WriteLine(ruta_bbdd);
}
return ruta_bbdd;
}
Lo dicho, el código aún tiene cosas bastante mejorables, como controlar las excepciones, pero supongo que con esto se resuelve tu duda.