OleDb本地文件的连接字符串

时间:2012-02-24 06:05:36

标签: c# database-connection connection-string oledbconnection

使用OleDb我连接到MS Access(v2003)数据库,我的Project文件夹是MyHotApps,我的OleDb连接字符串是

MyConString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source='C:\Users\Some User\Documents\Visual Studio 2010\WebSites\MyHotApps\Database\MyDbFile.mdb'";

如上所述,我的Project文件夹是MyHotApps,数据库文件MyDbFile.mdb位于Project_Folder<MyHotApps>\Database\MyDbFile.mdb

所以,它对我来说太本地了,数据库文件在项目文件夹中,我需要一个可移植连接字符串,我在哪里拿项目文件夹我不应该重写连接字符串以下方式不起作用

MyConString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source'=~Database\MyDbFile.mdb'";

任何人都可以帮我构建可移植连接字符串我读了一些表格,说数据库文件应该放在App_Data文件中,我也不知道怎么做。有人请告诉我建立便携式连接字符串。

2 个答案:

答案 0 :(得分:1)

您可以使用HttpRequest.PhysicalApplicationPath

如下所示,可以轻松解决您的可行路径问题......

Request.PhysicalApplicationPath

答案 1 :(得分:1)

您熟悉OldDbConnectionStringBuilder吗?将其与SqlConnectionStringBuilder等相关类一起使用,可以使用简单的构造函数和属性来构建所需的内容。此外,System.IO.Path类可用于构建目录路径。通常当我需要一个默认项目目录(在WPF应用程序中)时我会使用 AppDomain.CurrentDomain.BaseDirectory。然后我使用Path.Combine(base,filename)为文件创建一个完整的字符串。

System.IO.DirectorySystem.IO.DirectoryInfo也很有用。