c# 连接字符串和串联 app.config
c# connection string and concatenation app.config
我有以下连接字符串,通过它连接到位于我的应用程序根文件夹内的子文件夹中的 Access 数据库 (.mdb):
OleDbConnection con = new OledbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + System.AppDomain.CurrentDomain.BaseDirectory() + "Data\rctts.mdb;Jet OLEDB:Database Password=mypassword;")
我的问题是,如何将连接字符串放入 app.config 文件中?通常,我使用:
<connectionStrings>
<add name="Test" connectionString="Data Source=.;Initial Catalog=OmidPayamak;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>
我面临的问题是,在我的连接字符串中,我正在做一些连接并使用 System.AppDomain.CurrentDomain.BaseDirectory()
设置 Data Source
...
我如何在 app.config 中进行相同的连接?可以这样做吗?
虽然配置 API 不提供任何工具来为您操作连接字符串,但您可以将连接字符串 "template" 放入配置中,然后使用 string.Format
:[=13 在您的代码中进行其余操作=]
配置:
<connectionStrings>
<add name="Test" connectionString="Data Source={0}Data\rctts.mdb;Initial Catalog=OmidPayamak;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>
C#代码:
string conStr = string.Format(
ConfigurationManager.ConnectionStrings["Test"].ConnectionString
, System.AppDomain.CurrentDomain.BaseDirectory()
);
您可以尝试以下方法:
connectionString="Data Source=|DataDirectory|\rctts.mdb;Initial Catalog=OmidPayamak;Integrated Security=True"
然后尝试设置 DataDirectory
的值如下:
var currentDomain = AppDomain.CurrentDomain;
var basePath = currentDomain.BaseDirectory;
currentDomain.SetData("DataDirectory", basePath+"\Data");
在您的应用程序对应的启动文件中。
我有以下连接字符串,通过它连接到位于我的应用程序根文件夹内的子文件夹中的 Access 数据库 (.mdb):
OleDbConnection con = new OledbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + System.AppDomain.CurrentDomain.BaseDirectory() + "Data\rctts.mdb;Jet OLEDB:Database Password=mypassword;")
我的问题是,如何将连接字符串放入 app.config 文件中?通常,我使用:
<connectionStrings>
<add name="Test" connectionString="Data Source=.;Initial Catalog=OmidPayamak;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>
我面临的问题是,在我的连接字符串中,我正在做一些连接并使用 System.AppDomain.CurrentDomain.BaseDirectory()
设置 Data Source
...
我如何在 app.config 中进行相同的连接?可以这样做吗?
虽然配置 API 不提供任何工具来为您操作连接字符串,但您可以将连接字符串 "template" 放入配置中,然后使用 string.Format
:[=13 在您的代码中进行其余操作=]
配置:
<connectionStrings>
<add name="Test" connectionString="Data Source={0}Data\rctts.mdb;Initial Catalog=OmidPayamak;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>
C#代码:
string conStr = string.Format(
ConfigurationManager.ConnectionStrings["Test"].ConnectionString
, System.AppDomain.CurrentDomain.BaseDirectory()
);
您可以尝试以下方法:
connectionString="Data Source=|DataDirectory|\rctts.mdb;Initial Catalog=OmidPayamak;Integrated Security=True"
然后尝试设置 DataDirectory
的值如下:
var currentDomain = AppDomain.CurrentDomain;
var basePath = currentDomain.BaseDirectory;
currentDomain.SetData("DataDirectory", basePath+"\Data");
在您的应用程序对应的启动文件中。