3

我开始使用 SubSonic。我想将我的数据库更改为 sqlite,我的配置文件中有这个

  <connectionStrings>
      <add name="NorthwindSQLite"
       connectionString="Data Source=C:\unzipped\WindowsFormsApplication1\my.db"
       providerName="System.Data.SQLite"/>
  </connectionStrings>

我得到了例外

A first chance exception of type 'System.ArgumentException' occurred in System.Data.dll

Additional information: Unable to find the requested .Net Framework Data Provider.  It may not be installed.

我在参考部分有 SQLite 参考。那么我该如何纠正这个问题呢?

4

2 回答 2

4

如果您使用的是 Visual Studio,请尝试在服务器资源管理器中使用 System.Data.SQLite 创建数据库连接。如果 System.Data.SQLite 提供程序不在提供程序列表中,则安装或重新安装它。然后检查您是否可以在 Visual Studio 中打开和查看表数据。如果这有效,亚音速 2.2 应该能够使用 sqlite 文件。我在 subsonic 的 github 存储库中为 sqlite 使用了一个更新的 subsonic 数据提供程序,它似乎对我来说工作得更好一些。但是,它不会生成多对多代码。

在已部署的应用程序中,您不必单独安装提供程序。

于 2009-12-23T12:17:13.937 回答
1

哪个版本的亚音速?

我的 sqlite 工作提供程序部分如下所示:

<add name="Local" type="SubSonic.SQLiteDataProvider, SubSonic" connectionStringName="MyConn" generatedNamespace="X.Data" stripTableText="tbl" />

我的连接字符串看起来像

<add name="MyConn" connectionString="Data Source=C:\data.db;Version=3;"/>

希望这可以帮助 :-)

于 2009-12-23T07:40:17.627 回答