2010-03-10 7 views
1

Y at-il un moyen de spécifier un URI (comme un chemin physique) comme paramètre "Data Source" dans une chaîne de connexion OleDB ou le paramètre "Dbq" dans une chaîne de connexion ODBC, de sorte que les fournisseurs ADO.Net par défaut travailler avec ça?Fournit un URI en tant que paramètre pour une chaîne de connexion de fournisseur ODBC ou OleDB?

J'ai essayé file://, et c'est un non, donc je voulais juste confirmer si c'est possible ou non. Je ne le devine pas, mais tout lien de confirmation ou de documentation serait apprécié.

+0

Etes-vous en train de me faire cette notation? Nom du fichier = c: \ myDataLinkFile.udl – garik

+0

Non - Je veux dire un URI. Comme http: // ou file: // ou ftp: //. Quelque chose qui n'est pas un chemin physique absolu ou relatif comme "C: \" ou "\\ something \ temp". – womp

+0

Moniker! Droite? – garik

Répondre

1

Il est tout à fait possible que j'aie mal compris la question, mais je crois qu'il n'est pas possible de faire ce que vous demandez à moins que le fournisseur spécifique n'autorise cette fonctionnalité. J'ai écrit des parties d'un pilote ODBC, un fournisseur OLE DB et un fournisseur de données ADO.NET. Dans tous les cas, mon expérience a été que la valeur de la source de données est transmise directement au fournisseur/pilote sous-jacent sans aucune traduction. En fait, dans de nombreux cas, l'appel de l'application au fournisseur lui-même est à peu près un appel direct sans couches supplémentaires (par exemple, SqlConnection myconn = new SqlConnection(connstring); ne passe par aucune couche intermédiaire qui aurait même l'occasion de faire quelque chose avec la chaîne de connexion Donc, si le fournisseur ne reconnaît pas l'URI comme une source de données valide, ce serait une erreur

Donc le problème que je comprends est de savoir si oui ou non la spécification exige que les développeurs du fournisseur/pilote reconnaissent les URI. lire les spécifications un peu pour ces technologies et ne pas se souvenir de voir quoi que ce soit qui nécessite un tel support.Si une telle spécification existe, alors j'ai du travail à faire :)