c# – 使用ProviderFactory创建SQLite连接以获取异常

我试图使用ProviderFactory.CreateConnection()来获取SQLite连接.我收到一个System.ArgumentException与以下消息:

“不支持关键字:’datetimeformat’.”

连接字符串是:

@"data source=d:\db\Test.db3;Pooling=True;Max Pool Size=10;datetimeformat=Ticks"

在app.config文件中我有:

<system.data>
  <DbProviderFactories>
    <remove invariant="System.Data.SQLite"/>
    <add name="SQLite Data Provider" invariant="System.Data.SQLite"
       support="3F" description=".Net Framework Data Provider for SQLite"
         type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite" />
  </DbProviderFactories>
</system.data>

连接字符串在我实例化SQLiteConnection实例时有效.它无法使用ProviderFactory.关于如何解决这个问题的任何建议?

最佳答案 原来,我忘记执行以下代码行:

DbProviderFactory providerFactory =
    DbProviderFactories.GetFactory("System.Data.SqlClient");

然后随后的代码按预期工作,无一例外:

IDbConnection conn = providerFactory.CreateConnection();
点赞