2008-09-10 6 views
4

Un fournisseur OleDB est une implémentation binaire des interfaces COM fournies par Microsoft. De là, il semble être possible de créer un fournisseur en utilisant C#. Est-ce exact? Y a-t-il un échantillon démontrant cela? Si non, me décourageriez-vous de le faire? Je vois qu'il y a plusieurs échantillons non gérés mais je n'en trouve aucun géré.Fournisseur OleDB géré écrit en C#

Répondre

-4

Je ne suis pas sûr que je comprends vraiment votre question ?! Il déjà est un OleDBProvider géré ?! Je voudrais certainement décourager l'écriture d'un fournisseur qui existe et fonctionne absolument bien! :)

Mais en réponse à votre première question, vous pouvez bien sûr créer votre propre question. Le Data Provider Roadmap peut être un bon point de départ pour une vue d'ensemble et des liens vers des échantillons, etc.

+0

-1 Cela n'est pas vrai, l'implémentation gérée System.Data.OleDb est un client OLEDB et non un fournisseur. Le fournisseur autorise l'accès de n'importe quel client OLEDB à un ensemble de données. Il existe des fournisseurs pour SQL, Jet, Oracle, Index Server et une foule d'autres sources de données. Aucun d'entre eux n'est implémenté dans le code managé. –

2

L'article est bon, mais ne répond pas réellement à la question. OLEDB est un ensemble d'interfaces COM qui pourraient en fait être implémentées dans .Net via COM Interop bien que je n'ai jamais entendu parler d'une telle implémentation et n'est probablement pas conseillé.

L'ensemble des interfaces OLEDB est documenté par Microsoft here. OLEDB est un sujet compliqué et toutes les interfaces ne sont pas nécessaires pour implémenter un fournisseur fonctionnel. Pour aggraver les choses, différents clients OLEDB ont l'ensemble des interfaces dont ils ont besoin pour pouvoir utiliser le fournisseur. Par exemple, voici un list of require interfaces qui doit être implémenté pour utiliser un fournisseur à partir du client .Net OLEDB (System.Data.OleDb. *). Note: Je n'ai pas trouvé un tel lien pour le Framework 2.0 ou plus tard. Enfin, il est à noter qu'il était si difficile d'implémenter les fournisseurs Microsoft a fourni plus tard un ensemble de modèles ATL (C++) pour aider les développeurs à le faire correctement.

Pour en savoir plus sur OLEDB je recommande vivement de regarder le Windows Data Access SDK sur MSDN.

Questions connexes