VFPOLEDBドライバーを使用してDBFファイルを読み取っていますが、このエラーが発生し続けますが、問題を解決する理由と方法がわかりません。
プロバイダーは10進値を判別できませんでした。たとえば、行が作成されたばかりで、Decimal列のデフォルトは使用できず、コンシューマーはまだ新しいDecimal値を設定していませんでした。
これがコードです。このルーチンを呼び出して、DBFファイルのDataSetを返し、DataGridViewにデータを表示します。
public DataSet GetDBFData(FileInfo fi, string tbl)
{
using (OleDbConnection conn = new OleDbConnection(
@"Provider=VFPOLEDB.1;Data Source=" + fi.DirectoryName + ";"))
{
conn.Open();
string command = "SELECT * FROM " + tbl;
OleDbDataAdapter da = new OleDbDataAdapter(command, conn);
DataSet ds = new DataSet();
da.Fill(ds);
return ds;
}
}