Пользовательский поставщик данных? - PullRequest
4 голосов
/ 12 апреля 2011

У меня есть база данных, которая не предоставляет (пока) клиентскую библиотеку c #, только двоичный протокол TCP или HTTP rest.

Мне нужно написать приложение, которое может выполнять различные операции с БД: CRUD,управление и т. д.

Эти операции выражены в SQL-запросе с select / insert / update / delete и пользовательскими ключевыми словами для операций, специфичных для БД.

Мне интересно, каков путьк этому результату.Я могу задать вопрос с двух точек зрения: в идеальном мире и в практическом мире.

Буду признателен за любые отзывы! Каков рекомендуемый подход, возникшие проблемы и т. Д.

PS: я думаю над этими подходами:

  • написание собственного провайдера ADO.Net (IDbCommand, IDbConnection и т. Д.)
  • написание собственного провайдера linq (который опирается нана первом)
  • возможно, написание EF провайдера

1 Ответ

1 голос
/ 12 апреля 2011

Linq - это просто языковой запрос. Это синтаксис для выражения запроса, но в случае запросов к базе данных он просто создает дерево выражений, которое необходимо преобразовать в SQL и каким-либо образом выполнить. Для этого используется поставщик ADO.NET. То же самое относится к платформе Entity, которая полагается на поставщика ADO.NET для доступа к базе данных. Поэтому, если вы хотите создать какую-то реализацию, вам все равно следует начать с поставщика ADO.NET.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...