Я думаю, что ваш путь может быть неправильным, так как у вас есть "C: \ mybase" в строке подключения, а затем добавьте "my.dbf", который добавляет к "C: \ mybasemy.dbf".
Я предоставлю код, как я открываю и читаю DBF, используя набор данных вместо считывателя.
string oledbConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\spcs\;Extended Properties=dBASE IV;User ID=Admin;Password=";
OleDbConnection oledbConnection = new OleDbConnection(oledbConnectionString);
string oledbQuery = @"SELECT * FROM KUND";
try
{
OleDbCommand oledbCommand = new OleDbCommand(oledbQuery, oledbConnection);
OleDbDataAdapter oledbAdapter = new OleDbDataAdapter(oledbCommand);
DataSet oledbDataset = new DataSet();
oledbAdapter.FillSchema(oledbDataset, SchemaType.Mapped);
oledbConnection.Open();
oledbAdapter.Fill(oledbDataset);
foreach (DataRow row in oledbDataset.Tables[0].Rows)
{
System.Diagnostics.Trace.WriteLine(row[0].ToString());
}
}
catch (Exception ex)
{
// Do something with ex
}