Как изменить какой файл SQLite использует Subonic? - PullRequest
0 голосов
/ 22 мая 2011

У меня есть приложение C #, которое читает базы данных SQLite на моем клиентском компьютере. При запуске приложения пользователь должен выбрать, какую базу данных использовать. Прямо сейчас в моем app.config есть следующая строка для установки строки подключения:

<connectionStrings>
    <add name="LasergameDB"
       connectionString="Data Source=lasergame.db"
       providerName="System.Data.SQLite"/>
  </connectionStrings>

И этот код устанавливает мою базу данных:

new SimpleRepository("LasergameDB", SimpleRepositoryOptions.RunMigrations);

Это прекрасно работает, но только для файла lasergame.db. Как было бы возможно, чтобы мои пользователи выбирали файл SQLite при запуске, а затем создавали мою DatabaseConnection для этого файла.

(я использую дозвуковую версию 3.0.0.4 и .NET 3.5)

1 Ответ

1 голос
/ 22 мая 2011

Это должно работать:

string connectionString = string.Format(@"Data Source={0}", mysqlitedbfilename);
string providerName = @"System.Data.SQLite";
var provider = ProviderFactory.GetProvider(connectionString, providerName);
lasergameRepo = new SimpleRepository(provider, SimpleRepositoryOptions.RunMigrations);

Конечно, mysqlitedbfilename следует заменить полным путем и именем файла базы данных sqlite, который будет использоваться.

...