I would use the OLEDB connector - it has been updated recently, faster and better copes with memory.
If you just read data from DBF through the OLEDB driver, I would not worry about locking at the write or file level or data corruption. All you have to do is handle exceptions in C # code, for example, when some process in your FoxPro DBF application is open exclusively and you cannot read it.
You also need to be careful that any queries are optimized to use the available indexes in the DBF file, especially since you mention that it is large.
I assume this is all on the same LAN? If it should work over the Internet, you need to investigate the publication of FoxPro data through a web service.
Finally, there are other options for accessing DBF files.
Sybase also provides ODBC and OLEDB drivers that can access DBF files β however, they cannot use FoxPro triggers, stored procedures, etc. It almost certainly does not matter in your case.
source share