Я спрашиваю это как продолжение моего предыдущего вопроса: Каков хороший способ доступа к файлам dBase с использованием BDE и Delphi?
Было предложено, чтобы я позвонилна сервере Delphi COM вместо передачи данных через стандартный ввод / вывод, и я полностью согласен с тем, что такое решение очень ограничено.
В основном мне нужен способ вызова BDE из C # без использования ADO / OLEDB.Первоначально моим требованием было наличие возможности выполнять запросы напрямую и возвращать какой-то объект RecordSet, но я также согласен со строго типизированным интерфейсом с таким методом, как:
uint CreateCustomer (строка fname, строка lname, string addr, string email) uint CreateContract (...) bool DeleteContract (...)
Я бы предпочел не регистрировать COM-сервер с помощью regsvr32, а использовать Interop и DllImport для вызова методов DLLнепосредственно.Используя последний подход, существуют ли какие-либо особые соображения в отношении очистки ресурсов и «сеансов BDE», а что нет.
Кроме того, каков будет правильный способ обработки исключений и обеспечения любых ресурсов BDE (или других)освобождаются, если возникают исключения?
У меня много вопросов, и я не совсем уверен, как их четко представить:)
РЕДАКТИРОВАТЬ: ЯЯ полностью осознаю, что BDE «мертв», но я не имею никакого контроля над сторонним программным обеспечением, которое все еще использует BDE.