Connexion à une base de données Access avec ASP.NET
Je veux être en mesure d'utiliser une base de données Foo.accdb dans mon ASP.NET projet.
Quelle est la meilleure façon de s'y connecter? Je veux faire en sorte que le projet peut être porté à un autre ordinateur et encore du travail, donc dois-je viens de mettre le fichier de base de données à l'intérieur du dossier du projet (le même dossier que celui par Défaut.aspx est situé)?
Ai-je besoin d'importer la base de données dans Visual Studio en quelque sorte?
Je veux juste être en mesure d'utiliser le OleDb famille des classes pour manipuler les données. Si c'est tout ce que vous avez à faire, c'est le chemin d'accès à l'intérieur de Web.config par rapport au Web.config?
Donc ma chaîne de connexion comme:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Foo.accdb;User Id=admin;Password=;
- jetez un oeil à forums.asp.net/t/1352561.aspx/...
Vous devez vous connecter pour publier un commentaire.
Généralement, les gens utilisent le dossier App_Data pour cela.
Un exemple développé est ici: http://msdn.microsoft.com/en-us/library/445z2s49(v=vs. 80).aspx
L'avantage de l'avoir au sein de la structure, c'est que vous pouvez déplacer le site et les données à la fois. Toutefois, si le site est compromis, la base de données peut être aussi disponibles (bien que par défaut, l'application est configurée pour ne pas servir TOUS les fichiers de ce dossier). C'est pourquoi beaucoup de gens choisissent de le stocker dans un dossier en dehors du site web.
Également noter que l'Accès n'est pas vraiment un multi-utilisateur de la base de données de sorte que vous pouvez rencontrer des problèmes si vous avez l'intention à plusieurs utilisateurs d'accéder à la base de données à la fois.
Aussi, vous pouvez utiliser un chemin absolu ou un chemin relatif pour localiser le fichier mdb access dans la chaîne de connexion. Jetez un oeil au code de l'Ajouter une Source de Données étape dans la MSDN lien génère.
Dim conn as OleDbConnection = new OleDbConnection(?????)
. J'ai la chaîne de connexion ajouté à mon site Web.config mais l'Intellisense n'est pas l'attraper quand j'essaie de passer à la OleDbConnection constructeur.ConfigurationManager.ConnectionStrings("Foo").ConnectionString
et cela a fonctionné. C'est ce que je cherchais, merci.