添加连接字符串而不使用app.config

时间:2010-07-08 19:20:03

标签: c# subsonic configuration-files

我使用亚音速创建了一个数据访问层dll。但它使用app.config中的connectionstring。 我在ninjatrader中使用它并且不想乱用于连接字符串的ninjatrader app.config。我该如何避免这个问题。

3 个答案:

答案 0 :(得分:3)

我相信你能希望的最好的方法是为连接字符串使用一个单独的文件:

app.config中的

<connectionStrings ConfigSource="myConnStr.config" />
myConnStr.config中的

<connectionStrings > 
  <add .... />
  <add .... />
</connectionStrings > 

答案 1 :(得分:3)

我相信您可以使用SetDefaultConnectionString方法在运行时设置它:

SubSonic.DataService.GetInstance("InstanceName").SetDefaultConnectionString("ConnectionString");

答案 2 :(得分:3)

示例如何以编程方式硬编码连接字符串:

string connectionString = string.Format(@"Data Source={0}", Path.Combine(this.ConfigFolder, ConfigDb));
string providerName = @"System.Data.SQLite";
var provider = ProviderFactory.GetProvider(connectionString, providerName);
_configRepo = new SimpleRepository(provider, SimpleRepositoryOptions.RunMigrations);

此示例使用sqlite数据库,该数据库位于this.ConfigFolder中。 ConfigDB包含数据库文件的名称。